C#에서 템플릿에서 워드 생성

문서 생성 자동화는 기업이 동적 보고서, 송장 및 편지를 만들기 위해 매우 중요합니다. Aspose.Words 메일 병합 for .NET을 사용하면 객체, CSV, JSON 및 XML을 포함한 다양한 소스에서 데이터를 효율적으로 워드 템플릿에 채울 수 있습니다. 이 가이드는 C#에서 메일 병합을 활용하여 원활하고 자동화된 문서 워크플로를 설명하며, 특히 C# .NET 동적 워드 문서 생성에 중점을 둡니다.


다룰 주제:


넷용 메일 병합 개요

Aspose.Words 메일 병합 for .NET을 사용하면 개발자가 병합 필드가 포함된 미리 정의된 템플릿에서 개인화된 문서를 생성할 수 있습니다. 이 플러그인은 .NET 환경 내에서 원활하게 통합되도록 설계되어 있으며 다음과 같은 기능을 제공합니다:

  • .NET 프레임워크 워드 문서 생성을 지원하여 데이터를 동적으로 템플릿에 채움.
  • 대량 데이터 세트를 위한 .NET 메일 병합 솔루션을 활용하여 문서를 효율적으로 대량 생성.
  • 출력 간의 일관된 서식을 유지하여 C# 워드 문서 템플릿 모범 사례를 효과적으로 향상.

주요 기능:

  1. 다중 소스 지원: C#으로 객체, 데이터베이스, XML, JSON 및 CSV에서의 데이터를 사용하여 맞춤형 워드 문서를 생성합니다.
  2. 고성능: 대량 작업 및 대규모 데이터 세트를 효율적으로 처리하여 .NET Core를 사용한 동적 워드 문서 생성을 수행합니다.
  3. 맞춤형 템플릿: 데이터 삽입을 위한 자리 표시자가 있는 템플릿을 생성하여 .NET 워드 메일 병합 자동화 기능을 활용합니다.

설치

NuGet을 사용하여 Aspose.Words를 설치합니다:

PM> Install-Package Aspose.Words

C# 객체를 사용하여 템플릿에서 워드 문서 생성

먼저, C# 객체를 사용하여 워드 템플릿을 어떻게 채우는지 살펴보겠습니다. 이를 설명하기 위해 다음 자리 표시자가 포함된 워드 문서(DOC/DOCX)를 생성합니다:

<<[sender.Name]>> says: "<<[sender.Message]>>."

여기서 sender는 템플릿을 C#에서 데이터베이스에서 워드 문서 생성 방법으로 채우기 위해 사용할 클래스의 인스턴스입니다.

이제 Aspose.Words의 보고 엔진을 사용하여 템플릿 및 Sender 클래스의 인스턴스에서 워드 문서를 생성하는 방법은 다음과 같습니다:

  • 워드 템플릿 경로로 Document 클래스의 인스턴스를 생성하고 초기화합니다.
  • Sender 클래스의 객체를 생성하고 초기화합니다.
  • ReportingEngine 클래스를 인스턴스화합니다.
  • ReportingEngine.BuildReport()를 사용하여 템플릿을 채우고, 이 메서드는 Document의 인스턴스, 데이터 소스 및 데이터 소스의 이름을 매개변수로 받습니다.
  • Document.Save() 메서드를 사용하여 생성된 워드 문서를 저장합니다.

아래 코드는 C#에서 템플릿에서 워드 문서 생성하는 방법을 보여줍니다.

출력

C#에서 XML 데이터 소스를 이용한 워드 문서 생성

XML 데이터 소스에서 워드 문서를 생성하기 위해 다음과 같은 자리 표시자가 포함된 좀 더 복잡한 워드 템플릿을 사용할 것입니다:

<<foreach [in persons]>>이름: <<[Name]>>, 나이: <<[Age]>>, 생년월일: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
평균 나이: <<[persons.Average(p => p.Age)]>>

이 예제에서 사용된 XML 데이터 소스는 아래와 같습니다.

XML 데이터 소스에서 워드 문서를 생성하려면 다음 단계를 따릅니다:

  • Document 클래스의 인스턴스를 생성하고 워드 템플릿의 경로로 초기화합니다.
  • XmlDataSource 클래스의 인스턴스를 생성하고 XML 파일의 경로로 초기화합니다.
  • ReportingEngine 클래스를 인스턴스화합니다.
  • 앞에서와 같이 ReportingEngine.BuildReport() 메서드를 사용하여 워드 템플릿을 채웁니다.
  • Document.Save() 메서드를 사용하여 생성된 워드 문서를 저장합니다.

다음은 C#에서 XML 데이터 소스에서 워드 문서 생성하는 방법을 보여주는 코드 샘플입니다.

출력

C#에서 JSON 데이터 소스를 이용한 워드 문서 생성

다음으로, JSON 데이터 소스를 사용하여 워드 문서를 생성하는 방법을 살펴보겠습니다. 이 예제에서 우리는 관리자에 의해 분할된 고객 목록을 생성합니다. 워드 템플릿은 다음과 같습니다:

<<foreach [in managers]>>관리자: <<[Name]>>
계약:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

템플릿을 채우는 데 사용될 JSON 데이터 소스는 다음과 같습니다.

JSON에서 워드 문서를 생성하기 위해 JsonDataSource 클래스를 사용하여 데이터 소스를 로드하고 나머지 단계는 이전 구조를 따릅니다. 아래의 코드 샘플은 C#에서 JSON 템플릿에서 워드 문서 생성하는 방법을 보여줍니다.

출력

C#에서 CSV 데이터 소스를 이용한 워드 문서 생성

CSV 소스에서 워드 문서를 생성하기 위해 우리는 다음 워드 템플릿을 사용할 것입니다:

<<foreach [in persons]>>이름: <<[Column1]>>, 나이: <<[Column2]>>, 생년월일: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
평균 나이: <<[persons.Average(p => p.Column2)]>>

템플릿은 다음 CSV 데이터로 채워집니다:

이제 C# 코드를 검토해 보겠습니다. 단계는 동일하지만 한 가지 중요한 차이점이 있습니다: CSV 데이터를 로드하기 위해 CsvDataSource 클래스를 사용할 것입니다. 아래 코드 샘플은 CSV 데이터 소스에서 워드 문서 생성하는 방법을 보여줍니다.

출력

Aspose.Words for .NET 무료 체험

무료 임시 라이센스를 통해 _Aspose.Words for .NET_을 체험해 보세요.

결론

이 기사에서는 C#을 사용하여 템플릿에서 워드 문서를 생성하는 방법을 배웠습니다. 객체, XML, JSON 및 CSV와 같은 다양한 데이터 소스를 활용하여 동적 문서 생성을 .NET하는 방법을 알아보았습니다. 문서를 탐색하여 .NET 워드 템플릿 처리의 기능을 더 깊이 이해하고, 언제든지 포럼을 통해 문의해 주세요.

추가 정보