Compilerfehler CS0840

"Eigenschaftsname" ist nicht als abstrakt oder extern gekennzeichnet und muss daher einen Text deklarieren.Automatisch implementierte Eigenschaften müssen sowohl get- als auch set-Accessoren definieren.

Reguläre Eigenschaften müssen Text bereitstellen, außer sie sind als abstract oder extern gekennzeichnet bzw. sind Member eines partial-Typs.Automatisch implementierte Eigenschaften stellen keine Accessortexte bereit, müssen jedoch beide Accessoren angeben.Um eine schreibgeschützte automatisch implementierte Eigenschaft zu erstellen, setzen Sie den set-Accessor auf private.

So beheben Sie diesen Fehler

  • Stellen Sie den fehlenden Text bzw. Accessor bereit, oder verwenden Sie den abstract-Modifizierer, den extern-Modifizierer oder partial (Typ) (C#-Referenz)-Modifizierer für die Eigenschaft oder ihren einschließenden Typ.

Beispiel

Durch das folgende Beispiel wird der Fehler CS0840 ausgelöst:

// cs0840.cs
// Compile with /target:library
using System;
class Test
{
    public int myProp { get; } // CS0840

    // to create a read-only property
    // try the following line instead
    public int myProp2 { get; private set; }
    
}

Siehe auch

Referenz

Automatisch implementierte Eigenschaften (C#-Programmierhandbuch)