Partager via


Erreur du compilateur CS0116

Mise à jour : novembre 2007

Message d'erreur

Un espace de noms ne contient pas directement des membres, tels que des champs ou des méthodes
A namespace does not directly contain members such as fields or methods

À l'intérieur d'un espace de noms, le compilateur n'accepte que des classes, des structures, des unions, des énumérations, des interfaces et des délégués. Cette erreur est souvent générée par les développeurs à partir d'un acquis C/C++ qui oublient qu'en langage C#, les méthodes et variables doivent être déclarées et définies dans un struct ou dans une classe. Pour plus d'informations, consultez Structure générale d'un programme C# (Guide de programmation C#).

Exemple

L'exemple suivant génère l'erreur CS0116 :

// CS0116.cs
namespace x
{
    using System;

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