Wie kann ich die ToString () -Methode in C # überschreiben?

8

Ich möchte die Tostring () -Methode zum Ändern einiger Zeichen außer Kraft setzen. Ist es möglich? Wenn ja, wie kann ich das tun?

    
masoud ramezani 23.02.2010, 11:49
quelle

6 Antworten

15

Gemäß Ihrer Frage müssen Sie einige Zeichen in der ToString -Implementierung ändern, indem Sie die vorhandene Methode ToString aufrufen, indem Sie das Schlüsselwort base verwenden:

%Vor%

Beachten Sie, dass wenn Sie das base Schlüsselwort vergessen, es sich wiederholt selbst aufrufen wird, bis Sie ein StackOverflowException bekommen.

    
Mark Byers 23.02.2010, 12:03
quelle
16

Fügen Sie in Ihrer Klasse, in der Sie sie überschreiben möchten, Folgendes hinzu:

%Vor%     
Wim Hollebrandse 23.02.2010 11:53
quelle
5

Fügen Sie in der Klasse, die Sie die ToString-Funktion überschreiben möchten, Folgendes hinzu:

%Vor%     
stiank81 23.02.2010 11:53
quelle
3

Siehe Beispiel unter MSDN .

%Vor%     
p2u 23.02.2010 11:54
quelle
3

Sie müssen nur versuchen, public override zu schreiben, und dann erstellt Visual Studio die Methode für Sie wie folgt:

%Vor%     
Nasser Hadjloo 23.02.2010 11:57
quelle
0

Wenn jemand nach einer allgemeinen Antwort auf "Wie überschreibt man die ToString () -Methode" sucht, habe ich einen Beitrag geschrieben, "Übergeben Sie ToString () mithilfe der JSON-Serialisierung oder etwas anderem . "

In einer Zusammenfassung können die folgenden Technologien verwendet werden, um die Erstellung von ToString () zu vereinfachen:

  1. JSON-Serialisierung (entweder DataContractJsonSerializer, JSON.NET oder das NuGet-Paket JsonValue).

  2. XmlSerialize

  3. LINQPads Speichern eines beliebigen Objekts in einer HTML-Zeichenfolge

  4. ServiceStack.Text C # .NET-Erweiterungsmethode: T.Dump ();

Michael Freidgeim 04.05.2013 03:39
quelle

Tags und Links