Jar*_*ett 19 c# visual-studio-2010
我在类上调用静态方法
Foo.bar()
Run Code Online (Sandbox Code Playgroud)
Visual Studio的intellisense为我识别Foo和autocompletes吧(它突出了Foo和类似的一切工作正常).在我构建项目之前,一切看起来都很好,它会抛出一个错误,说当前上下文中不存在名称Foo.
我在其他文件中使用这个静态方法调用,所以我知道该类是正常的.这种情况对于发布代码来说太大了,所以我主要是寻找开始研究的理由,这会导致intellisense正常运行,但会在编译时遇到错误.
ahe*_*rog 29
我在不同的项目中看到了由不同版本的.NET框架引起的这个错误.我构建的类库是4.5,应用程序是4.0,但它唯一的错误是命名空间错误.更改类库上的框架版本并重建它,然后应用程序解决了错误.
当名称空间,类和变量具有相同的名称时,会发生这种情况.我以前曾经受过这种痛苦.Intellisense告诉我我是对的,编译告诉我我错了!我信任编译器!
你有两个我能想到的选择
在你的代码中搜索Foo,并看到它被用于静态类以外的东西.
完全限定Foo.bar()调用. MyApplication.This.That.Foo.bar();
按顺序执行...最好优雅地解决问题,这样你就可以调用Foo.bar(),因为这比MyApplication.This.That.Foo.bar();整个地方更具可读性和可维护性!
| 归档时间: |
|
| 查看次数: |
64513 次 |
| 最近记录: |