XML Serializer Generator-Tool (Sgen.exe)

Das XML Serializer Generator-Tool erstellt eine XML-Serialisierungsassembly für Typen in einer angegebenen Assembly. Die Serialisierungsassembly verbessert die Startleistung einer XmlSerializer, wenn diese Objekte der angegebenen Typen serialisiert oder deserialisiert.

Syntax

Führen Sie das Tool über die Befehlszeile aus.

sgen [options]  

Tipp

Damit .NET Framework Tools ordnungsgemäß funktionieren, müssen Sie entweder die Visual Studio Developer-Eingabeaufforderung oder Visual Studio Developer PowerShell verwenden oder die Umgebungsvariablen Path, Include und Lib richtig festlegen. Führen Sie zum Festlegen dieser Umgebungsvariablen die Datei SDKVars.bat aus, die sich im Verzeichnis <SDK>\<version>\Bin befindet.

Parameter

Option BESCHREIBUNG
/a[ssembly]:Dateiname Generiert den Serialisierungscode für alle Typen, die in der durch filename angegebenen Assembly oder ausführbaren Datei enthalten sind. Nur ein Dateiname kann bereitgestellt werden. Bei Wiederholung dieses Arguments wird der letzte Dateiname verwendet.
/c[ompiler]:Optionen Gibt die Optionen für die Übergabe an den C#-Compiler an. Bei Übergabe an den Compiler werden alle csc.exe-Optionen unterstützt. Damit kann angegeben werden, dass die Assembly signiert werden soll. Außerdem kann die Schlüsseldatei angegeben werden.
/d[ebug] Generiert ein Image, das mit einem Debugger verwendet werden kann.
/f[orce] Erzwingt das Überschreiben einer vorhandenen, gleichnamigen Assembly. Der Standardwert ist FALSE.
/help oder /? Zeigt Befehlssyntax und Optionen für das Tool an.
/k[eep] Unterdrückt das Löschen der generierten Quelldateien und anderer temporärer Dateien, nachdem sie in die Serialisierungsassembly kompiliert wurden. Damit kann ermittelt werden, ob das Tool für einen bestimmten Typ Serialisierungscode generiert.
/n[ologo] Unterdrückt die Anzeige des Startbanners von Microsoft.
/o[ut]:Pfad Gibt das Verzeichnis an, in das die generierte Assembly gespeichert werden soll. Hinweis: Der Name der generierten Assembly besteht aus dem Namen der Eingabeassembly plus „xmlSerializers.dll“.
/p[roxytypes] Generiert Serialisierungscode nur für die Proxytypen des XML-Webdiensts.
/r[eference]:assemblyfiles Gibt die Assemblys an, auf die von den Typen, die XML-Serialisierung erfordern, verwiesen wird. Akzeptiert mehrere Assemblydateien, die durch Kommas getrennt werden.
/s[ilent] Unterdrückt die Anzeige von Erfolgsmeldungen.
/t[ype]:type Generiert Serialisierungscode nur für den angegebenen Typ.
/v[erbose] Zeigt eine ausführliche Ausgabe für das Debuggen an. Listet Typen aus der Zielassembly auf, die nicht mit XmlSerializer serialisiert werden können.
/? Zeigt Befehlssyntax und Optionen für das Tool an.

Hinweise

Wenn der XML Serializer Generator nicht verwendet wird, generiert XmlSerializer bei jeder Ausführung einer Anwendung für jeden Typ Serialisierungscode und eine Serialisierungsassembly. Verwenden Sie für eine bessere Leistung beim Starten der XML-Serialisierung das Tool Sgen.exe, um die Assemblys im Voraus zu generieren. Diese Assemblys können dann zusammen mit der Anwendung bereitgestellt werden.

Mit dem XML Serializer Generator kann auch die Leistung von Clients, die zur Kommunikation mit Servern XML-Webdienstproxys verwenden, verbessert werden, da die Leistung durch den Serialisierungsprozess beim erstmaligen Laden des Typs nicht beeinträchtigt wird.

Die generierten Assemblys können nicht auf der Serverseite eines Webdiensts verwendet werden. Dieses Tool wird nur für Webdienstclients und manuelle Serialisierungsszenarien verwendet.

Wenn der Name der Assembly, die den zu serialisierenden Typen enthält, MyType.dll ist, erhält die zugehörige Serialisierungsassembly den Namen MyType.XmlSerializers.dll.

Hinweis

Das sgen-Tool ist nicht mit init-only-Settern kompatibel. Die Ausführung des Tools schlägt fehl, wenn die Zielassembly öffentliche Eigenschaften enthält, die dieses Feature verwenden.

Beispiele

Mit dem folgenden Befehl wird eine Assembly mit dem Namen Data.XmlSerializers.dll erstellt, um alle in der Assembly Data.dll enthaltenen Typen zu serialisieren.

sgen Data.dll

Auf die Assembly Data.XmlSerializers.dll kann vom Code verwiesen werden, der die Typen in Data.dll serialisiert und deserialisiert.

Siehe auch