Compilerfehler CS0116Compiler Error CS0116

Member, wie z.B. Felder oder Methoden, sind nicht direkt im Namespace enthalten.A namespace does not directly contain members such as fields or methods

Innerhalb eines Namespace nimmt der Compiler nur Klassen, Strukturen, Vereinigungen, Enumerationen, Schnittstellen und Delegaten an.Inside a namespace, the compiler only accepts classes, structures, unions, enumerations, interfaces, and delegates. Dieser Fehler wird häufig von Entwickler generiert, die einen C/C++-Hintergrund haben und vergessen, dass Methoden und Variablen in C# in einer Struktur oder Klasse deklariert und definiert werden müssen.This error is often generated by developers from a C/C++ background who forget that in C#, methods and variables must be declared and defined within a struct or class. Weitere Informationen finden Sie unter Allgemeine Struktur eines C#-Programms.For more information, see General Structure of a C# Program.

BeispielExample

Im folgenden Beispiel wird CS0116 generiert:The following sample generates CS0116:

// CS0116.cs  
namespace x  
{  
    using System;  

    // method must be in class/struct  
    void Method(string str) // CS0116  
    {  
        Console.WriteLine(str);  
    }  
    // To fix the error, you must  
    // enclose a method in a class:  
    class Program  
    {  
        void Method2(string str)  
        {  
            Console.WriteLine(str);  
        }  
    }  
}  

Siehe auchSee Also

Allgemeine Struktur eines C#-ProgrammsGeneral Structure of a C# Program
Klassen und StrukturenClasses and Structs
NamespacesNamespaces