c# - 为什么 C# 编译器会为内部类生成 CS0436 警告?

标签 c# warnings compiler-warnings

我在 C# 解决方案中使用 JetBrains 注释。我已将注释类作为链接文件引入到解决方案的每个项目中。我不希望 JetBrains 注释成为我的公共(public)界面的一部分,因此我将它们修改为内部而不是公共(public)。

但是,当我编译时,我收到很多警告 CS0436,例如:

C:\src\foo\bar.cs(12,29): warning CS0436: The type 'JetBrains.Annotations.NotNullAttribute' in 'C:\src\Common\JetBrains\JetBrains.cs' conflicts with the imported type 'JetBrains.Annotations.NotNullAttribute' in 'c:\src\blah\bin\Debug\blah.dll'. Using the type defined in 'C:\src\Common\JetBrains\JetBrains.cs'.

但在 JetBrains.cs 中,NotNullAttribute 是内部的:

internal sealed class NotNullAttribute : Attribute { }

我不明白为什么编译器会警告导入另一个程序集内部的类型。有什么想法吗?

最佳答案

我遇到了同样的问题,因为在 References 文件夹中有对同一个项目的引用。即:我的项目名称是 Store 并且引用具有相同的名称。我删除了它,问题解决了!祝你好运

关于c# - 为什么 C# 编译器会为内部类生成 CS0436 警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14730934/

相关文章:

c# - 在 switch 语句中,有什么方法可以引用被切换的值吗?

python - 使用 doctest 测试警告

c - va_start 警告 "second parameter of ' va_start ' not last named argument"

android-studio - 为什么即使我已经在其中明确使用了变量,android studio也会对未使用的变量给出警告

c - 处理双重间接时避免不兼容的指针警告

c# - WPF 图标预加载

c# - GetService 与 IOptionsMonitor<Settings> 返回 null 对象

java:如何使用 clone() 以及强制转换检查

c++ - 抑制多个编译器构建的警告

c# - .NET 4 中的 Math.Round() 行为