Erreur du compilateur CS0236
Mise à jour : novembre 2007
Message d'erreur
Un initialiseur de champ ne peut pas faire référence au champ, à la méthode ou à la propriété non statique 'champ'
A field initializer cannot reference the nonstatic field, method, or property 'field'
Les champs d'instance ne peuvent pas être utilisés pour initialiser d'autres champs d'instance en dehors d'une méthode. Si vous essayez d'initialiser une variable en dehors d'une méthode, pensez à effectuer l'initialisation à l'intérieur du constructeur de classe. Pour plus d'informations, consultez Méthodes (Guide de programmation C#).
L'exemple suivant génère l'erreur CS0236 :
// CS0236.cs
public class MyClass
{
public int i = 5;
public int j = i; // CS0236
public int k; // initialize in constructor
MyClass()
{
k = i;
}
public static void Main()
{
}
}