コンパイラ エラー CS0122

更新 : 2007 年 11 月

エラー メッセージ

'member' はアクセスできない保護レベルになっています。

クラス メンバのアクセス修飾子が原因で、そのメンバにアクセスできません。詳細については、「アクセス修飾子 (C# プログラミング ガイド)」を参照してください。

この原因の 1 つとして、フレンド アセンブリの出力先に対し、/out コンパイラ フラグが省略されていることが考えられます (以下の例には示されていません)。詳細については、「フレンド アセンブリ (C# プログラミング ガイド)」および「/out (出力ファイル名の設定) (C# コンパイラ オプション)」を参照してください。

使用例

次の例では CS0122 エラーが生成されます。

// CS0122.cs
public class MyClass
{
    // Make public to resolve CS0122
    void Foo()
    {
    }
}

public class MyClass2
{
    public static int Main()
    {
        MyClass a = new MyClass();
        // Foo is private
        a.Foo();   // CS0122
        return 0;
   }
}