Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der XML Serializer Generator 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.
Hinweis
Dieses Tool ist spezifisch für .NET Framework-Assemblys. Informationen zum Erstellen von XML-Serialisierern für .NET (Core)-Assemblys finden Sie unter Verwenden des Microsoft XML Serializer Generators auf .NET Core.
Syntax
Führen Sie das Tool über die Befehlszeile aus.
sgen [options]
Tipp
Damit .NET Framework-Tools ordnungsgemäß funktionieren, müssen Sie entweder visual Studio Developer Command Prompt oder Visual Studio Developer PowerShell verwenden oder die Path
Variablen , Include
und Lib
Umgebungsvariablen richtig festlegen. Führen Sie zum Festlegen dieser Umgebungsvariablen SDKVars.bataus, die <sich im Verzeichnis SDK>\<version>\Bin befindet.
Die Parameter
Auswahlmöglichkeit | BESCHREIBUNG |
---|---|
/a[ssembly]:filename | Generiert Serialisierungscode für alle Typen, die in der Assembly oder ausführbaren Datei enthalten sind, die durch Dateinamen angegeben wird. Es kann nur ein Dateiname angegeben werden. Wenn dieses Argument wiederholt wird, wird der letzte Dateiname verwendet. |
/c[ompiler]:options | Gibt die Optionen an, die an den C#-Compiler übergeben werden sollen. Alle csc.exe Optionen werden unterstützt, wenn sie an den Compiler übergeben werden. Damit kann angegeben werden, dass die Assembly signiert werden soll. Außerdem kann die Schlüsseldatei angegeben werden. |
/d[ebug] | Generiert ein Bild, das mit einem Debugger verwendet werden kann. |
/f[orce] | Erzwingt das Überschreiben einer vorhandenen, gleichnamigen Assembly. Die Standardeinstellung 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. Dies kann verwendet werden, um zu bestimmen, ob das Tool Serialisierungscode für einen bestimmten Typ generiert. |
/n[ologo] | Unterdrückt die Anzeige des Microsoft-Startbanners. |
/o[ut]:path | Gibt das Verzeichnis an, in dem die generierte Assembly gespeichert werden soll. Anmerkung: Der Name der generierten Assembly besteht aus dem Namen der Eingabeassembly plus "xmlSerializers.dll". |
/p[roxytypes] | Generiert Serialisierungscode nur für die XML-Webdienstproxytypen. |
/r[eference]:assemblyfiles | Gibt die Assemblys an, auf die von den Typen verwiesen wird, die eine XML-Serialisierung erfordern. Akzeptiert mehrere Assemblydateien, die durch Kommas getrennt sind. |
/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 dem XmlSerializer serialisiert werden können. |
/? | Zeigt Befehlssyntax und Optionen für das Tool an. |
Bemerkungen
Wenn der XML-Serialisierungsgenerator nicht verwendet wird, generiert XmlSerializer jedes Mal, wenn eine Anwendung ausgeführt wird, Serialisierungscode und eine Serialisierungsassembly für jeden Typ. Um die Leistung des Startvorgangs der XML-Serialisierung zu verbessern, verwenden Sie das Sgen.exe Tool, um diese Assemblys im Voraus zu generieren. Diese Assemblys können dann zusammen mit der Anwendung bereitgestellt werden.
Der XML Serializer-Generator kann auch die Leistung von Clients verbessern, die XML-Webdienstproxys für die Kommunikation mit Servern verwenden, da der Serialisierungsprozess beim ersten Laden des Typs keinen Leistungstreffer verursacht.
Die generierten Assemblys können nicht auf der Serverseite eines Webdiensts verwendet werden. Dieses Tool ist nur für Webdienstclients und manuelle Serialisierungsszenarien vorgesehen.
Hinweis
Das sgen
Tool ist nicht mit init-only Settern kompatibel. Das Tool schlägt fehl, wenn die Zielassembly öffentliche Eigenschaften enthält, die dieses Feature verwenden.
Benennung
Wenn die Assembly, die den zu serialisierenden Typ enthält, MyType.dllbenannt wird, wird die zugeordnete Serialisierungsassembly MyType.XmlSerializers.dllbenannt.
Beispiele
Mit dem folgenden Befehl wird eine Assembly namens Data.XmlSerializers.dll zum Serialisieren aller Typen erstellt, die in der Assembly mit dem Namen Data.dllenthalten sind.
sgen Data.dll
Die Data.XmlSerializers.dll Assemblierung kann von Code referenziert werden, der die Typen in Data.dll serialisieren und deserialisieren muss.