.NET Core에서 Microsoft XML Serializer Generator 사용
이 자습서에서는 C# .NET Core 애플리케이션에서 Microsoft XML Serializer Generator를 사용하는 방법을 배웁니다. 이 자습서를 진행하면서 다음을 익히게 됩니다.
- .NET Core 앱을 만드는 방법
- Microsoft.XmlSerializer.Generator 패키지에 대한 참조를 추가하는 방법
- MyApp.csproj를 편집하여 종속성을 추가하는 방법
- 클래스 및 XmlSerializer를 추가하는 방법
- 애플리케이션을 빌드하고 실행하는 방법
.NET Framework용 Xml Serializer Generator(sgen.exe)와 마찬가지로, Microsoft.XmlSerializer.Generator NuGet 패키지는 .NET Core 및 .NET Standard 프로젝트와 동일합니다. XmlSerializer를 사용하여 해당 형식의 개체를 직렬화하거나 역직렬화할 때 XML serialization의 시작 성능을 향상시키기 위해 어셈블리에 포함된 형식의 XML serialization 어셈블리를 만듭니다.
필수 조건
이 자습서를 완료하려면 다음이 필요합니다.
- .NET Core 2.1 SDK 이상.
- 선호하는 코드 편집기
팁
코드 편집기를 설치해야 하나요? Visual Studio를 체험해 보세요.
.NET Core 콘솔 애플리케이션에서 Microsoft XML Serializer Generator 사용
다음 지침은 .NET Core 콘솔 애플리케이션에서 Microsoft XML Serializer Generator를 사용하는 방법을 보여 줍니다.
.NET Core 콘솔 애플리케이션 만들기
명령 프롬프트를 열고 MyApp이라는 폴더를 만듭니다. 만든 폴더로 이동하고 다음 명령을 입력합니다.
dotnet new console
MyApp 프로젝트에서 Microsoft.XmlSerializer.Generator 패키지에 대한 참조 추가
dotnet add package
명령을 사용하여 프로젝트에 참조를 추가합니다.
유형:
dotnet add package Microsoft.XmlSerializer.Generator -v 1.0.0
패키지를 추가한 후 MyApp.csproj 변경 사항 확인
코드 편집기를 열고 시작해 보겠습니다! 앱을 빌드한 MyApp 디렉터리에서 계속 작업 중입니다.
텍스트 편집기에서 MyApp.csproj를 엽니다.
dotnet add package
명령을 실행하면 다음 줄이 MyApp.csproj 프로젝트 파일에 추가됩니다.
<ItemGroup>
<PackageReference Include="Microsoft.XmlSerializer.Generator" Version="1.0.0" />
</ItemGroup>
.NET CLI 도구 지원을 위해 다른 ItemGroup 섹션 추가
검사한 ItemGroup
섹션 뒤에 다음 줄을 추가합니다.
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.XmlSerializer.Generator" Version="1.0.0" />
</ItemGroup>
애플리케이션에서 클래스 추가
텍스트 편집기에서 Program.cs를 엽니다. Program.cs에서 MyClass라는 클래스를 추가합니다.
public class MyClass
{
public int Value;
}
MyClass에 대한 XmlSerializer
만들기
Main 내에 다음 줄을 추가하여 MyClass에 대해 XmlSerializer
를 만듭니다.
var serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyClass));
애플리케이션 빌드 및 실행
MyApp 폴더 내에서 dotnet run
을 통해 애플리케이션을 실행하면 런타임에 미리 생성된 serializer가 자동으로 로드되어 사용됩니다.
콘솔 창에 다음 명령을 입력합니다.
dotnet run
참고 항목
dotnet run
은 dotnet build
를 호출하여 빌드 대상이 빌드되었는지를 확인하고 dotnet <assembly.dll>
을 호출하여 대상 애플리케이션을 실행합니다.
Important
이 자습서에 나와 있는 애플리케이션 실행을 위한 명령과 단계는 개발하는 동안에만 사용됩니다. 앱을 배포할 준비가 되면 .NET Core 앱에 대한 여러 배포 전략 및 dotnet publish
명령을 살펴보세요.
모든 항목이 성공하면 MyApp.XmlSerializers.dll이라는 어셈블리가 출력 폴더에 생성됩니다.
축하합니다! 다음 작업을 수행했습니다.
- .NET Core 앱을 생성했습니다.
- 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>
관련 참고 자료
.NET