Errore del compilatore CS0199

Aggiornamento: novembre 2007

Messaggio di errore

I campi di un campo statico readonly 'nome' non possono essere passati come ref o out (tranne che in un costruttore statico)
Fields of static readonly field 'name' cannot be passed ref or out (except in a static constructor)

Una variabile readonly deve avere lo stesso utilizzo static del costruttore in cui si desidera passarla come parametro ref o out. Per ulteriori informazioni, vedere Passaggio di parametri (Guida per programmatori C#).

Esempio

Il seguente codice di esempio genera l'errore CS0199:

// CS0199.cs
class MyClass
{
    public static readonly int TestInt = 6;

    static void TestMethod(ref int testInt)
    {
        testInt = 0;
    }

    MyClass()
    {
        TestMethod(ref TestInt);   // CS0199, TestInt is static
    }

    public static void Main()
    {
    }
}