Kompilatorfel CS0038

Det går inte att komma åt en ickestatisk medlem av den yttre typen "type1" via kapslad typ "type2"

Ett fält i en klass är inte automatiskt tillgängligt för en kapslad klass. För att vara tillgängligt för en kapslad klass måste fältet vara statiskt. Annars måste du skapa en instans av den yttre klassen. Mer information finns i Kapslade typer.

Följande exempel genererar CS0038:

// CS0038.cs
class OuterClass
{
    public int count;
    // Try the following line instead.
    // public static int count;

    class InnerClass
    {
        void Func()
        {
            // or, create an instance
            // OuterClass class_inst = new OuterClass();
            // int count2 = class_inst.count;
            int count2 = count;   // CS0038
        }
    }

    public static void Main()
    {
    }
}