ルート名前空間 '<namespacename>' は CLS に準拠していません。

更新 : 2007 年 11 月

アセンブリが <CLSCompliant(True)> としてマークされているのに、ルート名前空間の名前がアンダースコア (_) で始まっています。

プログラミング要素には 1 つ以上のアンダースコアを含めることができますが、共通言語仕様 (CLS) に準拠するためには、先頭をアンダースコアにしないでください。宣言された要素の名前 を参照してください。

CLSCompliantAttribute をプログラミング要素に適用するときは、属性の isCompliant パラメータを True または False に設定して準拠または非準拠を示します。このパラメータの既定値はありません。値を指定する必要があります。

CLSCompliantAttribute を要素に適用しなかった場合は、非準拠と見なされます。

既定では、このメッセージは警告です。警告を非表示にする方法や、警告をエラーとして扱う方法の詳細については、Visual Basic での警告の構成 を参照してください。

Error ID: BC40038

このエラーを解決するには

  • CLS 準拠にする必要がある場合は、ルート名前空間の名前を変更し、アンダースコアで始まらないようにします。

  • ルート名前空間の名前を変更できない場合は、アセンブリから CLSCompliantAttribute を削除するか、アセンブリを <CLSCompliant(False)> としてマークします。

参照

処理手順

方法 : アプリケーションの名前空間を変更する (Visual Basic)

概念

Visual Basic における名前空間

宣言された要素の名前

Visual Basic の名前付け規則

CLS 準拠コードの記述

参照

Namespace ステートメント

/rootnamespace