我在C#解决方案中使用JetBrains注释。我已将注释类作为链接文件引入解决方案的每个项目中。我不希望JetBrains注释成为我的公共界面的一部分,所以我将它们修改为内部而不是公共。
然而,当我编译时,我收到很多警告CS0436,例如:
C:\ src \ foo \ bar.cs(12,29):警告CS0436:'C:\ src \ Common \ JetBrains \ JetBrains.cs'中的'JetBrains.Annotations.NotNullAttribute'类型与导入的冲突在'c:\ src \ blah \ bin \ Debug \ blah.dll'中键入'JetBrains.Annotations.NotNullAttribute'。使用'C:\ src \ Common \ JetBrains \ JetBrains.cs'中定义的类型。
但是在JetBrains.cs中,NotNullAttribute是内部的:
internal sealed class NotNullAttribute : Attribute { }
我不明白为什么编译器会警告导入另一个程序集内部的类型。有什么想法吗?
答案 0 :(得分:5)
我遇到了同样的问题,因为在References文件夹中有一个对同一项目的引用。即:我的项目名称是Store,引用名称相同。我删除它,问题解决了!祝你好运