C#에서 템플릿으로부터 Word 생성

문서 생성을 자동화하는 것은 동적 보고서, 송장 및 편지를 생성하려는 기업에 필수적입니다. Aspose.Words Mail Merge for .NET를 사용하면 객체, CSV, JSON 및 XML을 포함한 다양한 소스의 데이터로 Word 템플릿을 효율적으로 채울 수 있습니다. 이 가이드는 C#에서 메일 병합을 활용하여 동적 Word 문서 생성을 위한 간소화되고 자동화된 문서 워크플로우를 안내합니다.


다룰 주제:


.NET용 메일 병합 개요

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

  • .NET 프레임워크 Word 문서 생성을 지원하여 템플릿을 데이터로 동적으로 채울 수 있습니다.
  • 대량 데이터 세트를 활용하여 대량 문서 생성을 효율적으로 수행할 수 있습니다.
  • 출력 간 일관된 형식을 보장하여 C# Word 문서 템플릿 모범 사례를 향상시킵니다.

주요 기능:

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

설정

시작하려면 NuGet을 사용하여 Aspose.Words를 설치하세요:

PM> Install-Package Aspose.Words

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

C# 객체를 사용하여 Word 템플릿을 채우는 것으로 시작하겠습니다. 다음 자리 표시자가 포함된 Word 문서(DOC/DOCX)를 생성합니다:

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

이 예제에서 sender는 템플릿을 채우는 데 사용할 클래스의 인스턴스입니다.

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

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

다음은 C#에서 템플릿으로부터 Word 문서를 생성하는 방법을 보여주는 코드 샘플입니다.

출력

XML 데이터 소스에서 C#으로 Word 문서 생성

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

<<foreach [in persons]>>Name: <<[Name]>>, Age: <<[Age]>>, Date of Birth: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Age)]>>

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

XML 데이터 소스에서 Word 문서를 생성하려면 다음 단계를 따르세요:

  1. Document 클래스의 인스턴스를 생성하고 Word 템플릿의 경로로 초기화합니다.
  2. XmlDataSource 클래스의 인스턴스를 생성하고 XML 파일의 경로로 초기화합니다.
  3. ReportingEngine 클래스를 인스턴스화합니다.
  4. ReportingEngine.BuildReport() 메서드를 사용하여 Word 템플릿을 채웁니다.
  5. Document.Save() 메서드를 사용하여 생성된 Word 문서를 저장합니다.

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

출력

JSON 데이터 소스에서 C#으로 Word 문서 생성

다음으로, JSON 데이터 소스를 사용하여 Word 문서를 생성하는 방법을 살펴보겠습니다. 이 예제에서는 관리자로 분류된 클라이언트 목록을 생성합니다. Word 템플릿은 다음과 같습니다:

<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

템플릿을 채우는 데 사용할 해당 JSON 데이터 소스는 아래와 같습니다:

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

출력

CSV 데이터 소스에서 C#으로 Word 문서 생성

CSV 소스에서 Word 문서를 생성하기 위해, 다음 Word 템플릿을 사용할 것입니다:

<<foreach [in persons]>>Name: <<[Column1]>>, Age: <<[Column2]>>, Date of Birth: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Column2)]>>

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

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

출력

Aspose.Words for .NET 무료 체험하기

무료 임시 라이센스를 사용하여 _Aspose.Words for .NET_를 체험해 보세요.

결론

이 기사에서는 C#을 사용하여 템플릿에서 Word 문서를 생성하는 방법을 배웠습니다. 객체, XML, JSON 및 CSV와 같은 다양한 데이터 소스를 활용하여 .NET에서 동적 문서 생성을 탐구했습니다. .NET Word 템플릿 처리의 기능에 대한 추가 통찰력을 얻으려면 문서를 살펴보고, 언제든지 포럼을 통해 문의해 주세요.

참조