datacontractserializer

___ tag123c ___ C # (sprich "Cis") ist eine objektorientierte Programmiersprache auf hohem Niveau, die für die Erstellung einer Vielzahl von Anwendungen entwickelt wurde, die auf dem .NET Framework (oder .NET Core) ausgeführt werden. C # ist einfach, leistungsfähig, typsicher und objektorientiert. ___ tag123net ___ Das .NET-Framework ist ein Software-Framework, das hauptsächlich für das Microsoft Windows-Betriebssystem entwickelt wurde. Es enthält eine Implementierung der Basisklassenbibliothek, Common Language Runtime (allgemein als CLR bezeichnet), Common Type System (allgemein als CTS bezeichnet) und Dynamic Language Runtime. Es unterstützt viele Programmiersprachen, einschließlich C #, VB.NET, F # und C ++ / CLI. NICHT für Fragen zu .NET Core verwenden. ___ tag123initialisierung ___ Die Initialisierung beschäftigt sich mit der Aufgabe, den Inhalt Ihrer Datenstruktur zu initialisieren. Es ist eine gängige Praxis in statisch typisierten Sprachen. ___ answer2726004 ___

Sie können einen Serialisierungsrückruf verwenden. Fügen Sie Ihrer Personenklasse die folgende Methode hinzu:

%Vor%

Eine weitere Option besteht darin, die Attribute [DataContract] und [DataMember] zu entfernen. In diesem Fall ruft DCSerializer Ihren Konstruktor bei der Deserialisierung auf.

    
___ qstntxt ___

Wenn ich eine Klasse mit %code% serialisieren und später deserialisieren möchte, wie kann ich dann die Anfangswerte von Eigenschaften steuern, die nicht serialisiert wurden?

Betrachten Sie die Klasse %code% unten. Der Datenvertrag ist so eingestellt, dass die Eigenschaften %code% und %code% serialisiert werden, nicht jedoch die Eigenschaft %code% . Ich möchte %code% auf TRUE initialisieren, ob eine neue Person als neue Instanz instanziiert oder aus einer Datei deserialisiert wird.

Dies ist leicht über den Konstruktor möglich, aber wie ich es verstehe, ruft %code% den Konstruktor nicht auf, da sie Parameter benötigen könnten.

%Vor%     
___ answer2869425 ___

Tatsächlich ist es die richtige Vorgehensweise, das OnDeserializing-Attribut zu verwenden (beachten Sie das Suffix "ing"). Die mit diesem Attribut markierte Methode wird aufgerufen, bevor die Mitgliedswerte deserialisiert werden.

    
___ tag123defaultvalue ___ Ein Standard in der Informatik bezieht sich auf eine Einstellung oder einen Wert, der einer Softwareanwendung, einem Computerprogramm oder einem Gerät automatisch zugewiesen wird, und zwar außerhalb des Benutzereingriffs. ___ tag123datactractserializer ___ .NET Framework-Klasse, Serialisierung und Deserialisierung einer Instanz eines Typs in einen XML-Stream oder ein XML-Dokument mithilfe eines bereitgestellten Datenvertrags. ___ qstnhdr ___ Festlegen des Anfangswerts einer Eigenschaft bei Verwendung von DataContractSerializer ___
2
Antworten

Festlegen des Anfangswerts einer Eigenschaft bei Verwendung von DataContractSerializer

Wenn ich eine Klasse mit DataContractSerializer serialisieren und später deserialisieren möchte, wie kann ich dann die Anfangswerte von Eigenschaften steuern, die nicht serialisiert wurden? Betrachten Sie die Klasse Person unten. Der Da...
28.04.2010, 00:01