Använda Microsoft XML Serializer Generator på .NET Core
I den här självstudien lär du dig hur du använder Microsoft XML Serializer Generator i ett C# .NET Core-program. Under den här självstudiekursen lär du dig:
- Så här skapar du en .NET Core-app
- Så här lägger du till en referens till paketet Microsoft.XmlSerializer.Generator
- Så här redigerar du ditt MyApp.csproj och lägger till beroenden
- Så här lägger du till en klass och en XmlSerializer
- Så här skapar och kör du programmet
Precis som Xml Serializer Generator (sgen.exe) för .NET Framework är NuGet-paketet Microsoft.XmlSerializer.Generator motsvarigheten för .NET Core- och .NET Standard-projekt. Den skapar en XML-serialiseringssammansättning för typer som ingår i en sammansättning för att förbättra startprestanda för XML-serialisering vid serialisering eller av-serialisering av objekt av dessa typer med hjälp XmlSerializerav .
Krav
För att slutföra den här kursen behöver du:
- .NET Core 2.1 SDK eller senare.
- Din favoritkodredigerare.
Tips
Behöver du installera en kodredigerare? Prova Visual Studio!
Använda Microsoft XML Serializer Generator i ett .NET Core-konsolprogram
Följande instruktioner visar hur du använder XML Serializer Generator i ett .NET Core-konsolprogram.
Skapa en .NET Core-konsolapp
Öppna en kommandotolk och skapa en mapp med namnet MyApp. Gå till mappen som du skapade och skriv följande kommando:
dotnet new console
Lägg till en referens till paketet Microsoft.XmlSerializer.Generator i MyApp-projektet
dotnet add package
Använd kommandot för att lägga till referensen i projektet.
Ange:
dotnet add package Microsoft.XmlSerializer.Generator -v 1.0.0
Verifiera ändringar i MyApp.csproj när du har lagt till paketet
Öppna kodredigeraren så kommer vi igång! Vi arbetar fortfarande från katalogen MyApp som vi skapade appen i.
Öppna MyApp.csproj i textredigeraren.
När du har kört dotnet add package
kommandot läggs följande rader till i projektfilen MyApp.csproj :
<ItemGroup>
<PackageReference Include="Microsoft.XmlSerializer.Generator" Version="1.0.0" />
</ItemGroup>
Lägg till ett annat ItemGroup-avsnitt för stöd för .NET CLI Tool
Lägg till följande rader efter avsnittet ItemGroup
som vi inspekterade:
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.XmlSerializer.Generator" Version="1.0.0" />
</ItemGroup>
Lägga till en klass i programmet
Öppna Program.cs i textredigeraren. Lägg till klassen MyClass i Program.cs.
public class MyClass
{
public int Value;
}
Skapa en XmlSerializer
för MyClass
Lägg till följande rad i Main för att skapa en XmlSerializer
för MyClass:
var serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyClass));
Skapa och kör appen
Kör programmet via dotnet run
i mappen MyApp och läses in automatiskt och de förgenererade serialiserarna används vid körning.
Skriv följande kommando i konsolfönstret:
dotnet run
Anteckning
dotnet run
anrop dotnet build
för att säkerställa att byggmålen har skapats och anropar dotnet <assembly.dll>
sedan för att köra målprogrammet.
Viktigt
Kommandona och stegen som visas i den här självstudien för att köra ditt program används endast under utvecklingstiden. När du är redo att distribuera din app kan du ta en titt på de olika distributionsstrategierna för .NET Core-appar och dotnet publish
kommandot.
Om allt lyckas genereras en sammansättning med namnet MyApp.XmlSerializers.dll i utdatamappen.
Grattis! Du har precis:
- Skapade en .NET Core-app.
- Lade till en referens till paketet Microsoft.XmlSerializer.Generator.
- Redigerade myApp.csproj för att lägga till beroenden.
- Lade till en klass och en XmlSerializer.
- Skapade och körde programmet.
Ytterligare anpassa XML-serialiseringssammansättningen (valfritt)
Lägg till följande XML i MyApp.csproj för att ytterligare anpassa sammansättningsgenereringen:
<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>