如何禁用使用C#的CLS符合性检查?

问题描述:

如何禁用CLS符合性检查?如何禁用使用C#的CLS符合性检查?

我怎么能做到这一点的:

  1. 整个组件
  2. 一个较小的范围,也许一个文件或一类...

您可以使用CLSCompliant属性明确标记程序集或类型,例如,

对于组件,添加下面的行中的AssemblyInfo.cs

[assembly: CLSCompliant(false)] 

对于一类

[CLSCompliant(false)] 
public class Foo 
{ 
} 

也可以将它用于特定类型的成员(方法,属性等)以类似的方式。

你可以使用[CLSCompliant(false)]属性。从DOC

引用:

可以应用 CLSCompliantAttribute属性到 以下程序元素:组件, 模块,类,结构,枚举 构造函数,方法,属性字段, 事件,接口,委托,参数, 和返回值。但是,符合CLS的概念 对于组件,模块,类型和 成员类型仅有意义 ,而不是 成员签名的一部分。因此,当 应用于参数或返回值 程序元素时, CLSCompliantAttribute被忽略。

还有可能性supress compiler warnings