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í při serializaci nebo deserializuje objekty zadaných typů.
Poznámka:
Tento nástroj je specifický pro sestavení rozhraní .NET Framework. Chcete-li generátor serializátory XML pro sestavení .NET (Core), viz Použití generátoru serializátoru XML v .NET Core.
Syntaxe
Spusťte nástroj z příkazového řádku.
sgen [options]
Tip
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 Include
Path
, 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. Je-li tento argument se opakuje, se používá poslední název souboru. |
/c[ompiler]:options | Určuje možnosti, které mají být předána do kompilátor jazyka C#. Všechny možnosti csc.exe se podporují, protože se předávají kompilátoru. To lze použít k určení, že by měl být podepsáno sestavení a k určení souboru s klíčem. |
/d[ebug] | Generuje obrázek, který lze použít se ladicí program. |
/f[orce] | Vynutí přepsání existující 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í vytvořených zdrojových souborů a jiné dočasné soubory, poté, co byl zkompilován sestavení serializace. To lze použít k určení, zda tento nástroj je generování kódu serializace pro určitý typ. |
/n[ologo] | Potlačí zobrazování úvodní nápis společnosti Microsoft. |
/o[ut]:path | Určuje adresář, do kterého chcete uložit vygenerované sestavení. Poznámka: Název generovaného sestavení se skládá z názvu vstupního sestavení a "xmlSerializers.dll". |
/p[roxytypy] | Generuje kód serializace pouze pro typy XML webové služby proxy serveru. |
/r[eference]:assemblyfiles | Určuje sestavení, která je odkazováno dle typy vyžadujících serializace XML. Je možné zadat 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 u zadaného typu. |
/v[erbose] | Zobrazí podrobné informace pro ladění. Zobrazí seznam typů z cílového sestavení, které nelze serializovat, s XmlSerializer. |
/? | Zobrazí syntaxi příkazu a možnosti nástroje. |
Poznámky
Pokud není použit generátor serializátor XML, XmlSerializer generuje serializace kód a serializace sestavení pro každý typ pokaždé, když je aplikace spuštěna. Chcete-li zlepšit výkon při spuštění serializace XML, použijte nástroj Sgen.exe k vygenerování těchto sestavení předem. Tyto sestavení lze nasadit poté s aplikací.
Generátor serializátoru XML může také zlepšit výkon klientů, kteří používají proxy webové služby XML ke komunikaci se servery, protože proces serializace nebude mít při prvním načtení typu přístup k výkonu.
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 sestavení obsahující typ serializace má název MyType.dll, bude přidružené sestavení serializace 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.