Udostępnij przez


Używanie generatora serializatora XML firmy Microsoft na platformie .NET Core

Z tego samouczka dowiesz się, jak używać generatora serializatora XML firmy Microsoft w aplikacji języka C#. W trakcie tego samouczka nauczysz się:

  • Jak utworzyć aplikację konsolową platformy .NET
  • Jak dodać odwołanie do pakietu Microsoft.XmlSerializer.Generator
  • Jak edytować plik MyApp.csproj, aby dodać zależności
  • Jak dodać klasę i element XmlSerializer
  • Jak skompilować i uruchomić aplikację

Podobnie jak w przypadku generatora serializatora XML (sgen.exe) dla platformy .NET Framework pakiet NuGet Microsoft.XmlSerializer.Generator jest odpowiednikiem projektów NuGet .NET Core/.NET 5+ i .NET Standard. Tworzy zestaw serializacji XML dla typów zawartych w zestawie, aby poprawić wydajność uruchamiania serializacji XML podczas serializacji lub deserializacji obiektów tych typów przy użyciu XmlSerializer.

Wymagania wstępne

Aby ukończyć ten samouczek:

Wskazówka

Czy chcesz zainstalować edytor kodu? Wypróbuj program Visual Studio!

Poniższe instrukcje pokazują, jak używać generatora serializatora XML w aplikacji konsolowej platformy .NET Core.

Tworzenie aplikacji

  1. Otwórz wiersz polecenia i utwórz folder o nazwie MyApp. Przejdź do utworzonego folderu i wpisz następujące polecenie:

    dotnet new console
    
  2. Dodaj odwołanie do pakietu Microsoft.XmlSerializer.Generator.

    dotnet add package Microsoft.XmlSerializer.Generator -v 8.0.0
    

    Po uruchomieniu tego polecenia do pliku projektu MyApp.csproj zostaną dodane następujące wiersze:

    <ItemGroup>
       <PackageReference Include="Microsoft.XmlSerializer.Generator" Version="8.0.0" />
    </ItemGroup>
    
  3. Dodaj odwołanie do narzędzia, dodając następującą ItemGroup sekcję do pliku projektu.

    <ItemGroup>
       <DotNetCliToolReference Include="Microsoft.XmlSerializer.Generator" Version="8.0.0" />
    </ItemGroup>
    
  4. Otwórz Program.cs w edytorze tekstów. Dodaj klasę o nazwie MyClass w Program.cs.

    public class MyClass
    {
       public int Value;
    }
    
  5. Utwórz element XmlSerializer dla elementu MyClass. Dodaj następujący wiersz do pliku Program.cs :

    var serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyClass));
    
  6. Skompiluj i uruchom aplikację. Uruchom aplikację za pomocą polecenia dotnet run:

    dotnet run
    

    Aplikacja automatycznie ładuje i używa wstępnie wygenerowanych serializatorów w czasie wykonywania.

    Wskazówka

    dotnet run wywołuje dotnet build w celu upewnienia się, że obiekty docelowe kompilacji zostały skompilowane, a następnie wywołuje dotnet <assembly.dll> w celu uruchomienia aplikacji docelowej.

Ważne

Polecenia i kroki przedstawione w tym samouczku do uruchamiania aplikacji są używane tylko w czasie programowania. Gdy będziesz gotowy do wdrożenia swojej aplikacji, zapoznaj się z różnymi strategiami wdrażania dla aplikacji .NET i poleceniem dotnet publish.

Jeśli wszystko powiedzie się, w folderze wyjściowym zostanie wygenerowany zestaw o nazwie MyApp.XmlSerializers.dll .

Gratulacje! Masz tylko:

  • Utworzono aplikację konsolową platformy .NET.
  • Dodano odwołanie do pakietu Microsoft.XmlSerializer.Generator.
  • Edytowałeś plik MyApp.csproj, aby dodać zależności.
  • Dodano klasę i element XmlSerializer.
  • Skompiluj i uruchom aplikację.

Dodatkowo dostosuj zestaw serializacji XML (opcjonalnie)

Dodaj następujący kod XML do pliku MyApp.csproj , aby jeszcze bardziej dostosować generowanie zestawów:

<PropertyGroup>
    <SGenReferences>C:\myfolder\abc.dll;C:\myfolder\def.dll</SGenReferences>
    <SGenTypes>MyApp.MyClass;MyApp.MyClass1</SGenTypes>
    <SGenProxyTypes>false</SGenProxyTypes>
    <SGenVerbose>true</SGenVerbose>
    <SGenKeyFile>mykey.snk</SGenKeyFile>
    <SGenDelaySign>true</SGenDelaySign>
</PropertyGroup>