(0) exportieren Drucken
Alle erweitern
Erweitern Minimieren
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Compilerfehler CS0843

Das dahinter liegende Feld für die automatisch implementierte 'Name'-Eigenschaft muss vollständig zugewiesen werden, bevor die Steuerung wieder an den Aufrufer übergeben wird. Rufen Sie den Standardkonstruktor aus einem Konstruktorinitialisierer auf.

Um einer automatisch implementierten Eigenschaft einen Wert aus einem Konstruktor zuzuweisen, müssen Sie zuerst den Standardkonstruktor aufrufen, um das Objekt zu erstellen.

So beheben Sie diesen Fehler

  • Fügen Sie dem Standardkonstruktor in einem Konstruktorinitialisierer einen Aufruf hinzu, wie im folgenden Beispiel dargestellt. Beachten Sie die Verwendung von : this(). Weitere Informationen finden Sie unter this (C#-Referenz).

Durch den folgenden Code wird der Fehler CS0843 generiert:

// cs0843.cs
struct S
{
    public int AIProp { get; set; }
    public S(int i){} //CS0843
    // Try the following lines instead.
   // public S(int i) : this()
   // {
   //     AIProp = i;
   // }
}

class Test
{
    static int Main()
    {
        return 1;
    }
}

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft