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

문서 생성을 자동화하는 것은 동적 보고서, 송장 및 편지를 작성하려는 기업에 매우 중요합니다. Aspose.Words Mail Merge for .NET를 사용하면 객체, CSV, JSON 및 XML을 포함한 다양한 출처의 데이터로 Word 템플릿을 효율적으로 채울 수 있습니다. 이 가이드는 C#에서 Mail Merge를 활용하여 간소화된 자동 문서 워크플로를 구현하는 방법을 설명하며, C# .NET을 통한 동적 Word 문서 생성에 중점을 둡니다.


목차


Mail Merge for .NET 개요

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

  • 데이터로 템플릿을 동적으로 채우고, .NET 프레임워크 Word 문서 생성을 지원합니다.
  • .NET 메일 머지 솔루션을 활용하여 대량 문서 생성을 효율적으로 수행합니다.
  • 출력 간의 일관된 형식을 보장하여 C# Word 문서 템플릿 모범 사례를 향상시킵니다.

주요 기능:

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

설정

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

PM> Install-Package Aspose.Words

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

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

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

이 예제에서 sender는 템플릿을 채우기 위해 사용할 클래스의 인스턴스입니다. C# 데이터베이스에서 Word 문서 생성 접근 방식을 사용합니다.

다음으로, Aspose.Words의 보고 엔진을 사용하여 템플릿과 Sender 클래스의 인스턴스를 사용하여 Word 문서를 생성합니다. 다음 단계를 따릅니다:

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

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

출력

C#에서 XML 데이터 소스로부터 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 문서를 생성하는 방법을 보여주는 코드 샘플입니다.

출력

C#에서 JSON 데이터 소스로부터 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 문서를 생성하는 방법을 보여주는 코드 샘플입니다.

출력

C#에서 CSV 데이터 소스로부터 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 템플릿 처리의 기능에 대한 더 많은 통찰력을 원하시면 문서를 확인하시고, 언제든지 포럼을 통해 문의해 주시기 바랍니다.