XML, verileri depolamak ve taşımak için tasarlanmış, W3C Tarafından Önerilen, kendini açıklayan bir dildir. Bir geliştirici, XML biçimini, .NET uygulamasında PDF veya MS Word belgesi gibi insanlar tarafından daha iyi okunabilen başka bir biçime değiştirebilir. Bu makale, basit şablonlar aracılığıyla C# kullanarak XML verilerinin PDF ve MS Word raporlarına nasıl dönüştürüleceğini tartışacaktır.
Aşağıdaki konular aşağıda tartışılmaktadır:
- Rapor Oluşturmak için .NET API
- C# kullanarak XML Verilerinden PDF Raporu Oluşturun
- C# kullanarak XML Verilerinden MS Word DOC/DOCX Raporu Oluşturun
Rapor Oluşturma .NET API – XML’den PDF ve WORD’e
GroupDocs.Assembly for .NET, DOCX veya TXT şablonunu kullanarak XML verilerinden rapor oluşturmayı otomatikleştiren API’dir. Ek olarak, verileri farklı dosya biçimlerindeki raporlara dönüştürmek için JSON, CSV ve diğer veri kaynaklarını destekler.
İndirilenler bölümünden DLL’leri veya MSI yükleyicisini indirebilir veya NuGet aracılığıyla .NET uygulamanıza API’yi yükleyebilirsiniz.
PM> Install-Package GroupDocs.Assembly
C# ile XML Verilerinden PDF Raporu Oluşturun
3 basit adım, XML verilerini biçimlendirilmiş PDF raporuna dönüştürmenize yol açacaktır.
- XML veri kaynağınızı yükleyin.
- Yüklenen XML verilerine göre şablonu tanımlayın.
- Son olarak, bir rapor oluşturma yöntemine XML veri kaynağı ve şablon sağlayın.
XML Verileri
Aşağıdaki XML örnek verileri, PDF raporuna dönüştürülmesi için kullanılır. Yöneticilerin ve ilgili müşterilerinin verilerini biraz daha ayrıntıyla birlikte içerir.
<Managers>
<Manager>
<Name>John Smith</Name>
<Contract>
<Client>
<Name>A Company</Name>
</Client>
<Price>1200000</Price>
</Contract>
<Contract>
...
</Contract>
...
</Manager>
<Manager>
<Name>Tony Anderson</Name>
...
</Manager>
...
</Managers>
Şablon
Şablonu, kaynak XML verilerinize göre TXT veya DOCX biçiminde tanımlayın. Yöneticilerin yukarıda belirtilen XML verilerine göre oluşturulmuş aşağıdaki şablonu kullanıyorum. Bu, rapor oluşturucunun Yöneticiler ve onların ilgili Müşterileri üzerinde yineleme yapmasını sağlayacaktır. Şablonu tamamladıktan sonra, neredeyse işiniz bitti. Rapor oluşturma işleminiz için aşağıdaki kodu kullanabilirsiniz.
<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>
XML’den PDF Raporu Oluşturmak için C# Adımları
Aşağıdaki adımlar, tanımladığınız şablona göre XML verilerinizden PDF raporları oluşturmayı otomatikleştirmenizi sağlar.
- XML veri dosyasını, metin şablonu dosyasını ve PDF çıktı raporu dosyalarını tanımlayın.
- XML veri dosyasıyla XMLDataSoure örneğini oluşturun.
- Tanımlı XML veri kaynağıyla DataSourceInfo oluşturun.
- PDF raporunu oluşturmak için AssembleDocument yöntemini çağırın.
Aşağıdaki kod, yukarıdaki adımları uygular ve C# kullanarak XML veri kaynağından bir PDF oluşturur.
// CSharp'ta TXT şablonunu kullanarak XML verilerinden PDF Raporu oluşturun
// Veri kaynağı, şablon ve çıktı raporu dosyalarını tanımlayın.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-pdf-report.pdf";
// XML veri kaynağını yükle
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// PDF oluşturmak için belgeyi birleştirin
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));
C# dilinde XML verilerinden MS Word Raporu oluşturun
Aynı şekilde, aynı XML verilerini kullanarak MS Word DOC/DOCX formatında da rapor oluşturabilirsiniz. Çıktı dosyası adını değiştirmeniz gerekmesi dışında, kodda yukarıda tartıştığımız koddan hiçbir fark olmayacaktır.
- XML veri dosyasını yükleyin.
- Şablonu TXT veya DOCX biçiminde tanımlama.
- Çıktı raporu belge biçimini DOCX olarak ayarlayın.
- XML’i DOCX’e dönüştürmek için XML veri dosyasını, şablonunu ve çıktı dosyası yolunu DocumentAssembler‘a sağlayın.
Aşağıdaki kod XML’i dönüştürür ve C# kullanarak tanımlı şablonu kullanarak DOCX dosyasını oluşturur.
// CSharp'ta metin şablonunu kullanarak XML verilerinden MS Word Raporu oluşturun
// Veri kaynağı, şablon ve çıktı raporu dosyalarını tanımlayın.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-word-report.docx";
// XML veri kaynağını yükle
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// Word Raporu oluşturmak için belgeyi birleştirin
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));
Ücretsiz API Lisansı Alın
API’yi değerlendirme sınırlamaları olmadan kullanmak için ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Özetle, .NET uygulaması ile C# kullanarak XML verilerini rapor olarak PDF formatına dönüştürmeyi öğrendiniz. Ek olarak, şablonu kullanarak aynı XML’den DOC/DOCX formatında rapor oluşturmayı tartıştık. Bu rapor oluşturma yazı dizisini okuduktan sonra; JSON, CSV, XML’den PDF ve MS Word Raporları oluşturun, kendi rapor oluşturma .NET uygulamanızı geliştirebilirsiniz.
GroupDocs.Assembly, seçenekler ve örnekler hakkında daha fazla bilgi için dokümantasyon ve GitHub deposunu ziyaret edin. Daha fazla sorgu için forum aracılığıyla bize ulaşın.