.NET: Hoe geeft u aan dat een overgenomen eigenschap niet is geïmplementeerd?

In de sectie get van de overgenomen eigenschap kunt u een NotImplementedException gooien. Maar wat te doen met de ingestelde sectie?

0
ja ru de
/// Deze methode is niet geïmplementeerd
toegevoegd de auteur cadrell0, de bron
Er is echt geen leuke manier om niet iets te implementeren :( Iemand ergens zal overstuur raken als hij het verwacht en het werkt niet omdat het "gewoon niet werkt" of een uitzondering vormt. .kijk er misschien anders naar: wat zijn gevolgen van het niet implementeren van dergelijke eigendommen?
toegevoegd de auteur user166390, de bron
@pst: Ik denk dat het nog steeds beter is dan dat ze het zelf uitvinden na het schrijven van veel code?
toegevoegd de auteur Aperture, de bron

1 antwoord

U zou de eigenschap verouderd kunnen markeren, zoals:

[Obsolete("This property is not implemented", true)]
public new int SomeProperty
{
    get { throw new NotImplementedException(); }
    set { throw new NotImplementedException(); }
}

Op die manier krijgen gebruikers een foutmelding als ze de property proberen te gebruiken. U kunt ook een [EditorBrowsable (EditorBrowsableState.Never)] -kenmerk toevoegen om de eigenschap te verbergen voor intellisense, maar volgens MSDN " in Visual C#, EditorBrowsableAttribute onderdrukt leden niet van een klasse in dezelfde assembly. " Dus ik weet niet zeker of dat veel hulp zou zijn.

1
toegevoegd