最近在敲王继彬视频中登录的例子时,经常遇到“不包含定义,并且找不到可接受类型的第一个扩展方法”的问题,于是就查了查相关的内容。错误列表见下图:
当设计界面出现这个问题时,返回Windows窗体界面,情况如下:
1、为什么会出现这个界面?
Windows 窗体设计器无法加载时 Microsoft Visual Studio 中显示的设计时错误列表的含义和使用方法。 如果出现此错误列表,则不应将其理解为设计器中的 Bug,而应作为纠正代码中的错误的辅助手段。
2、这个界面的内容选项是什么?
(1)错误的确切位置:
[项目名称][窗体名称] 行:[行号] 列:[列号]。
(2)转至代码:
单击“转至代码”链接将跳转到代码中发生错误的位置。
(3)显示调用堆栈:
如果调用堆栈与错误关联,则可单击“显示调用堆栈”链接,这将进一步扩展此错误以显示调用堆栈。 检查堆栈可提供有价值的调试信息。 例如,可以跟踪在错误发生之前调用过的函数。 调用堆栈是可选定的,因此您可以复制并保存它。
(4)忽略并继续
可以选择忽略错误条件并继续加载设计器。 选择此操作可能会导致意外行为。 例如,控件可能不会显示在设计图面。
(5)MSDN 帮助主题:
如果错误包含一个指向相关 MSDN 帮助主题的链接,则附加帮助将包含一个指向该帮助主题的链接。 当单击该链接时,Visual Studio 中将显示相关帮助主题。
(6)MSDN论坛文章
3、解决办法:
若单击“忽略并继续”,原先设计的控件就会不见了,又要重新设计界面。我的解决方法是:单击转至代码,把出现问题的那一行代码注释掉。这样,就不会再报错了。
4、那么为什么会出现这个错误呢?
仅向外界公开标记有 ServiceOperationAttribute 的那些方法。如果在某个方法中省略了 ServiceOperationAttribute 特性,则当所编译的客户端应用程序调用缺少该特性的操作时,便会收到此错误消息。
比如:单击窗体,进入Form1的load事件的代码编辑中,后来发现用不到它的load事件,就把这几行代码给注释掉了,这时候运行程序就会出现这一系列的问题。
在这方面,VS和VB6是不一样的。对VS也在进一步熟悉中……
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。