Errore del compilatore CS0116

Aggiornamento: novembre 2007

Messaggio di errore

Uno spazio dei nomi non può contenere direttamente membri come campi o metodi.
A namespace does not directly contain members such as fields or methods

In uno spazio dei nomi il compilatore accetta solo classi, strutture, unioni, enumerazioni, interfacce e delegati. Questo errore viene generato principalmente da sviluppatori con esperienze precedenti in C o C++ che, in C#, omettono di dichiarare e definire le variabili e i metodi all'interno di una struttura o di una classe. Per ulteriori informazioni, vedere Struttura generale di un programma C# (Guida per programmatori C#).

Esempio

Il seguente codice di esempio genera l'errore CS0116:

// CS0116.cs
namespace x
{
    using System;

    // method must be in class/struct
    void Method(string str) // CS0116
    {
        Console.WriteLine(str);
    }
}