我有一些代码,它会在几个地方生成这个警告。我想修复它们,但我不知道它们在哪里,因为 C# 编译器没有报告错误行(有一个开放的 MS Connect 问题)。
有没有工具可以告诉我有问题的代码在哪里?IL 级工具很好,知道方法名称和声明类型就足够了。
我有一些代码,它会在几个地方生成这个警告。我想修复它们,但我不知道它们在哪里,因为 C# 编译器没有报告错误行(有一个开放的 MS Connect 问题)。
有没有工具可以告诉我有问题的代码在哪里?IL 级工具很好,知道方法名称和声明类型就足够了。
您已经声明了一个类,如:
[SomeAttribute(new string[] { "foo", "bar" })
class SomeClass { }
或已声明如下属性:
class SomeAttribute : Attribute
{
public SomeAttribute(string[] arr) { } // or another array
}
而这一切正在发生,因为您的程序集被标记为 CLSCompliant:
[assembly:CLSCompliant(true)]
我会采用以下流程:
如果在您的解决方案中定义了相关属性,那么第一部分应该相当容易。
如果属性来自依赖项,那么您可能必须使用正则表达式搜索来查找使用此类属性的位置。