Program xsd.exe – pomoc przy pracy

Program xsd.exe jest dostarczany wraz z pakietem visual studio i możemy go uruchomić poprzez konsolę developerską na przykład (Developer Command Prompt for VS 2017) dostępną z menu start. Program ten jest bardzo przydatny, kiedy musimy wygenerować klasy do serializacji, a dysponujemy schemą xml-a lub też kompletnym plikiem xml. Pozwala nam to zautomatyzować żmudne wpisywanie klas obiektów serializowanych ręcznie jak opisaliśmy w  tym poście. W kolejnych akapitach postaram się powiedzieć jak wykorzystywać xsd.exe przy pracach związanych z serializacją xml-a.

Xml na schemę xsd

Pierwszym przypadkiem użycia będzie wykorzystanie możliwości stworzenia schemy xsd na podstawie pliku xml-owego.  W najprostszej formie możemy wywołać program z katalogu, gdzie mamy nasz plik
xml-owy i jako parametr podać tylko nazwę pliku wejściowego.

Naszym plikiem wejściowym będzie ostatnio wygenerowany plik xml

po wywołaniu polecenia

w tym samym katalogu otrzymamy schemę pliku SerializedObject.xsd

Xsd na klasę

Kolejnym krokiem jest wygenerowanie klas na podstawie schemy. To również jest zadaniem trywialnym. Tym razem oprócz parametru w postaci nazwy pliku xsd  wykorzystujemy przełączniki /c lub /class oraz  /language:languageName. Wspieranymi językami są :

  • C#(CS)  jest wartością domyślną w przypadku generacji klas C# przełącznik można pominąć
  • Visual Basic (VB)
  • JScript (JS)
  • Visual J# (VJS)

Nie są to pełne możliwości programu xsd.exe lecz najczęściej wykorzystywane, osobiście nie miałem okazji wykorzystać innych a i generację schemy wykorzystałem tylko 1 raz. Co innego generacja klas, z której korzystałem wiele razy. Więcej można przeczytać w dokumentacji https://docs.microsoft.com/en-us/dotnet/standard/serialization/xml-schema-definition-tool-xsd-exe

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *