我已经重构了我的项目,这个项目很小,可以修正名称空间和类名。在某个地方,有些事情变得棘手,我得到了与Linq方法有关的编译错误,直到我用ObservableCollection类文件中的随机命名空间修复它。 linq错误仅与ObservableCollection有关,而与winform中的任何其他对象无关。
这感觉就像一个Visual Studio错误,因为我觉得我已经检查了所有内容。
我在同一个项目中有一个winform,一个类(MyObject)和另一个类(ObservableCollection)。
它们都有对System.Linq的引用,并且都具有MyProject.ProjectCategory
winform看起来像这样
using System.Linq;
namespace MyProject.ProjectCategory
private ObservableCollection<MyObject> myList;
// ...later in a method
myList.All(f => f.Title != "Test")
// the list of errors contains any Linq methods and is a long list. Here is one example
// ERROR: MyProject.ProjectCategory.ObservableCollection<MyObject> does not contain
// a definition for 'All' and no extension method 'All' accepting the first argument
// of type MyProject.ProjectCategory.ObservableCollection<MyObject>
以下是我更改类的名称空间(ObservableCollection)
的结果MyProject.ProjectCategory (as above) ERROR
MyProject ERROR
Fubar COMPILES
MyProject.ProjectCategory.Fubar COMPILES
我尝试过清理,重建,删除所有bin和obj文件夹。检查所有.Net版本号是否相同。检查参考路径。
我可以和Fubar命名空间一起生活,但是如果有人有线索的话,我会选择修复。