Nástroj generátoru serializace XML (Sgen.exe)

Generátor serializátoru XML vytvoří sestavení serializace XML pro typy v zadané sestavení. Sestavení serializace zlepšuje výkon XmlSerializer při spuštění pro serializaci nebo deserializaci objektů zadaných typů.

Poznámka:

Tento nástroj je specifický pro sestavení rozhraní .NET Framework. Chcete-li generovat serializátory XML pro sestavení .NET (Core), viz Use Microsoft XML Serializer Generator on .NET Core.

Syntaxe

Spusťte nástroj z příkazového řádku.

sgen [options]

Návod

Aby nástroje rozhraní .NET Framework fungovaly správně, musíte buď použít Visual Studio Developer Command Prompt, nebo Visual Studio Developer PowerShell, nebo nastavit PathInclude, a Lib proměnné prostředí správně. Pokud chcete nastavit tyto proměnné prostředí, spusťte SDKVars.bat, která se nachází v <adresáři SDK>\<version>\Bin .

Parametry

Možnost Popis
/a[ssembly]:filename Generuje serializační kód pro všechny typy obsažené v sestavení nebo spustitelném souboru určeném názvem souboru. Lze zadat pouze jeden název souboru. Pokud se tento argument opakuje, použije se poslední název souboru.
/c[ompiler]:options Určuje možnosti, které se mají předat kompilátoru jazyka C#. Všechny csc.exe volby jsou podporovány, protože se předávají kompilátoru. To lze použít k určení, že sestavení by mělo být podepsáno a zadat soubor klíče.
/d[ebug] Vygeneruje image, kterou lze použít s ladicím programem.
/f[orce] Vynutí přepsání existujícího sestavení se stejným názvem. Výchozí hodnota je false.
/help nebo /? Zobrazí syntaxi příkazu a možnosti nástroje.
/k[eep] Potlačí odstranění vygenerovaných zdrojových a dalších dočasných souborů po jejich kompilaci do sestavení pro serializaci. To lze použít k určení, zda nástroj generuje serializační kód pro určitý typ.
/n[ologo] Potlačí zobrazení úvodního banneru Microsoftu.
/o[ut]:path Určuje adresář, do kterého se má vygenerované sestavení uložit. Poznámka: Název generovaného sestavení se skládá z názvu vstupního sestavení plus "xmlSerializers.dll".
/p[roxytypy] Generuje kód serializace pouze pro typy proxy webových služeb XML.
/r[eference]:assemblyfiles Určuje sestavení, na která odkazují typy vyžadující serializaci XML. Přijímá více souborů sestavení oddělených čárkami.
/s[ilent] Potlačí zobrazování zpráv o úspěšném dokončení.
/t[ype]:type Generuje kód serializace pouze pro zadaný typ.
/v[erbose] Zobrazí detailní výstup pro ladění. Uvádí typy z cílového sestavení, které nelze serializovat pomocí objektu XmlSerializer.
/? Zobrazí syntaxi příkazu a možnosti nástroje.

Poznámky

Pokud není použit generátor XML serializátoru, XmlSerializer generuje kód pro serializaci a sestavení pro serializaci pro každý typ pokaždé, když je aplikace spuštěna. Chcete-li zlepšit výkon spuštění serializace XML, použijte nástroj Sgen.exe k vygenerování těchto sestavení předem. Tato sestavení je pak možné nasadit s aplikací.

Generátor serializátoru XML může také zlepšit výkon klientů, kteří používají XML proxy webové služby pro komunikaci se servery, protože proces serializace nebude negativně ovlivněn v době prvního načtení typu.

Vygenerovaná sestavení nelze použít na straně serveru webové služby. Tento nástroj je určen pouze pro klienty webové služby a scénáře ruční serializace.

Poznámka:

Nástroj sgen není kompatibilní s inicializačními settery. Nástroj selže, pokud cílové sestavení obsahuje všechny veřejné vlastnosti, které tuto funkci používají.

Pojmenování

Pokud je sestavení obsahující typ, který má být serializován, pojmenováno MyType.dll, pak bude přidružené serializační sestavení pojmenováno MyType.XmlSerializers.dll.

Příklady

Následující příkaz vytvoří sestavení s názvem Data.XmlSerializers.dll pro serializaci všech typů obsažených v sestavení s názvem Data.dll.

sgen Data.dll

Sestavení Data.XmlSerializers.dll lze odkazovat z kódu, který potřebuje serializovat a deserializovat typy v Data.dll.

Viz také