C#を使用してCLSコンプライアンスチェックを無効にするにはどうすればよいですか

StackOverflow https://stackoverflow.com/questions/4062626

  •  27-09-2019
  •  | 
  •  

質問

CLSコンプライアンスチェックを無効にするにはどうすればよいですか?

どうすればいいですか:

  1. アセンブリ全体
  2. より小さなスコープ、おそらく1つのファイルまたは1つのクラス...
役に立ちましたか?

解決

CLSCompliant属性を使用して、アセンブリまたはタイプを明示的にマークすることができます。

アセンブリについては、AssemblyInfo.csに次の行を追加します

[assembly: CLSCompliant(false)]

クラスの場合

[CLSCompliant(false)]
public class Foo
{
}

同様の方法で特定のタイプメンバー(メソッド、プロパティなど)に使用することもできます。

他のヒント

使用できます [CLSCompliant(false)] 属性。

ドキュメントからの引用:

CLSCompliantAttribute属性を次のプログラム要素に適用できます:アセンブリ、モジュール、クラス、構造体、enum、コンストラクター、メソッド、プロパティ、フィールド、イベント、インターフェイス、デリゲート、パラメーター、および返信値。ただし、CLSコンプライアンスの概念は、メンバーの署名の一部ではなく、アセンブリ、モジュール、タイプ、およびタイプのメンバーにとってのみ意味があります。したがって、パラメーターまたは戻り値プログラム要素に適用すると、CLSCompliantAttributeは無視されます。

可能性もあります サプレスコンパイラ警告.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top