다음을 통해 공유


.NET Core에서 Microsoft XML Serializer 생성기 사용

이 자습서에서는 C# 애플리케이션에서 Microsoft XML Serializer 생성기를 사용하는 방법을 알아봅니다. 이 자습서를 진행하는 동안 다음을 알아봅니다.

  • .NET 콘솔 앱을 만드는 방법
  • Microsoft.XmlSerializer.Generator 패키지에 대한 참조를 추가하는 방법
  • MyApp.csproj를 편집하여 종속성을 추가하는 방법
  • 클래스 및 XmlSerializer를 추가하는 방법
  • 애플리케이션을 빌드하고 실행하는 방법

.NET Framework용 Xml Serializer 생성기(sgen.exe) 와 마찬가지로 Microsoft.XmlSerializer.Generator NuGet 패키지 는 .NET Core/.NET 5 이상 및 .NET Standard 프로젝트에 해당합니다. 어셈블리에 포함된 형식에 대한 XML serialization 어셈블리를 만들어 해당 형식 XmlSerializer의 개체를 직렬화하거나 직렬화 해제할 때 XML serialization의 시작 성능을 향상시킵니다.

필수 조건

이 자습서를 완료하려면 다음을 수행합니다.

팁 (조언)

코드 편집기를 설치해야 합니까? Visual Studio를 사용해 보세요!

다음 지침에서는 .NET Core 콘솔 애플리케이션에서 XML Serializer 생성기를 사용하는 방법을 보여 줍니다.

앱 만들기

  1. 명령 프롬프트를 열고 MyApp이라는 폴더를 만듭니다. 만든 폴더로 이동하고 다음 명령을 입력합니다.

    dotnet new console
    
  2. Microsoft.XmlSerializer.Generator 패키지에 대한 참조를 추가합니다.

    dotnet add package Microsoft.XmlSerializer.Generator -v 8.0.0
    

    이 명령을 실행하면 MyApp.csproj 프로젝트 파일에 다음 줄이 추가됩니다.

    <ItemGroup>
       <PackageReference Include="Microsoft.XmlSerializer.Generator" Version="8.0.0" />
    </ItemGroup>
    
  3. 프로젝트 파일에 다음 ItemGroup 섹션을 추가하여 도구 참조를 추가합니다.

    <ItemGroup>
       <DotNetCliToolReference Include="Microsoft.XmlSerializer.Generator" Version="8.0.0" />
    </ItemGroup>
    
  4. 텍스트 편집기에서 Program.cs 엽니다. Program.csMyClass라는 클래스를 추가합니다.

    public class MyClass
    {
       public int Value;
    }
    
  5. XmlSerializer를 위해 MyClass을/를 만드세요. Program.cs 파일에 다음 줄을 추가합니다.

    var serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyClass));
    
  6. 애플리케이션을 빌드하고 실행합니다. 다음을 통해 애플리케이션을 실행합니다.dotnet run

    dotnet run
    

    앱은 런타임에 미리 생성된 serializer를 자동으로 로드하고 사용합니다.

    팁 (조언)

    dotnet run 를 호출 dotnet build 하여 빌드 대상이 빌드되었는지 확인하고 대상 애플리케이션을 실행하기 위해 호출 dotnet <assembly.dll> 합니다.

중요합니다

애플리케이션을 실행하기 위해 이 자습서에 표시된 명령과 단계는 개발 시간 동안에만 사용됩니다. 앱을 배포할 준비가 되면 .NET 앱 및 명령에 대한 다양한 dotnet publish 살펴보세요.

모든 작업이 성공하면 출력 폴더에 MyApp.XmlSerializers.dll 이름이 지정된 어셈블리가 생성됩니다.

축하합니다! 방금 완료했습니다.

  • .NET 콘솔 앱을 만들었습니다.
  • Microsoft.XmlSerializer.Generator 패키지에 대한 참조를 추가했습니다.
  • 종속성을 추가하도록 MyApp.csproj를 편집했습니다.
  • 클래스 및 XmlSerializer를 추가했습니다.
  • 애플리케이션을 빌드하고 실행합니다.

XML serialization 어셈블리 추가 사용자 지정(선택 사항)

MyApp.csproj에 다음 XML을 추가하여 어셈블리 생성을 추가로 사용자 지정합니다.

<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>