Freigeben über


Compilerfehler CS1643

Aktualisiert: November 2007

Fehlermeldung

Nicht alle Codepfade geben einen Wert in einer Methode vom Typ 'Typ' zurück
Not all code paths return a value in method of type 'type!'

Dieser Fehler tritt auf, wenn ein Delegatentext entweder keine Rückgabeanweisung oder aber eine Rückgabeanweisung enthält, die der Compiler nicht überprüfen kann. Im folgenden Beispiel hat der Compiler das Ergebnis der Verzweigungsbedingungen nicht vorausberechnet, um sicherzustellen, dass der anonyme Methodenblock immer einen Wert zurückgibt.

Beispiel

Im folgenden Beispiel wird der Fehler CS1643 generiert.

// CS1643.cs
delegate int MyDelegate();

class C
{
    static void Main()
    {
        MyDelegate d = delegate
        {                 // CS1643
            int i = 0;
            if (i == 0)
                return 1;
        };
    }
}