XML היא שפה מומלצת של W3C המתארת את עצמה, שנועדה לאחסן ולהעביר נתונים. מפתח יכול לשנות את פורמט ה-XML לכל פורמט אחר הניתן לקריאה על ידי אדם כמו מסמך PDF או MS Word בתוך יישום NET. מאמר זה ידון כיצד להמיר נתוני XML לדוחות PDF ו-MS Word באמצעות C# באמצעות תבניות פשוטות.

דוח XML ל-PDF ב-C#

הנושאים הבאים נדונים להלן:

Generation Report Generation .NET API – XML ל-PDF ו-WORD

GroupDocs.Assembly for .NET הוא ה-API לאוטומטי של הפקת הדוחות מנתוני ה-XML באמצעות תבנית DOCX או TXT. בנוסף, הוא תומך ב-JSON, CSV ומקורות נתונים אחרים כדי להמיר את הנתונים לדוחות בפורמטים שונים של קבצים.

אתה יכול להוריד את קובצי ה-DLL או ה-MSI מתקין מסעיף ההורדות או להתקין את ה-API באפליקציית NET שלך דרך NuGet.

PM> Install-Package GroupDocs.Assembly

הפק דוח PDF מנתוני XML ב-C#

3 שלבים פשוטים יובילו אותך להמיר נתוני XML לדוח ה-PDF המעוצב.

  1. טען את מקור הנתונים ב-XML שלך.
  2. הגדר את התבנית בהתאם לנתוני ה-XML הטעונים.
  3. לבסוף, ספק מקור נתונים ותבנית XML לשיטת הפקת דוחות.

נתוני XML

נתוני ה-XML הבאים משמשים להמרה לדוח PDF. הוא מכיל את הנתונים של המנהלים והלקוחות שלהם עם כמה פרטים נוספים.

<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>

תבנית

הגדר את התבנית בפורמט TXT או DOCX בהתאם לנתוני ה-XML המקור שלך. אני משתמש בתבנית המוזכרת למטה שנוצרת לפי נתוני ה-XML שהוזכרו לעיל של מנהלים. זה יגרום למחולל הדוחות לחזור על המנהלים והלקוחות שלהם. לאחר השלמת התבנית, כמעט סיימת. אתה יכול להשתמש בקוד שלהלן להפקת הדוחות שלך.

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

C# שלבים להפקת דוח PDF מ-XML

השלבים הבאים מאפשרים לך להפוך את היצירה של דוחות PDF מנתוני ה-XML שלך לאוטומטיים בהתאם לתבנית שהוגדרה.

  • הגדר קובץ נתוני XML, קובץ תבנית טקסט וקובצי דוחות פלט PDF.
  • הצג את XMLDataSoure עם קובץ נתוני XML.
  • צור DataSourceInfo עם מקור נתוני XML מוגדר.
  • התקשר לשיטת AssembleDocument כדי להפיק את דוח ה-PDF.

הקוד הבא מיישם את השלבים לעיל ומייצר PDF ממקור הנתונים של XML באמצעות C#.

// הפק דוח PDF מנתוני XML באמצעות תבנית TXT ב-CSharp
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-pdf-report.pdf";
// טען מקור נתונים של XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// הרכיב מסמך ליצירת PDF
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

הפק דוח MS Word מנתוני XML ב-C#

באותו אופן, אתה יכול גם ליצור את הדוח בפורמט MS Word DOC/DOCX באמצעות אותם נתוני XML. לא יהיה הבדל בקוד מזה שדיברנו עליו לעיל, פרט לכך שאתה צריך לשנות את שם קובץ הפלט.

  • טען את קובץ נתוני ה-XML.
  • הגדרת התבנית בפורמט TXT או DOCX.
  • הגדר את פורמט מסמך דוח הפלט כ-DOCX.
  • ספק את קובץ נתוני ה-XML, התבנית ונתיב קובץ הפלט אל DocumentAssembler כדי להמיר את ה-XML ל-DOCX.

הקוד הבא ממיר את ה-XML ויוצר את קובץ ה-DOCX באמצעות התבנית המוגדרת באמצעות C#.

// הפק דוח MS Word מנתוני XML באמצעות תבנית טקסט ב-CSharp
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-word-report.docx";
// טען מקור נתונים של XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// הרכיב מסמך כדי ליצור דוח Word
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם כדי להשתמש ב-API ללא מגבלות ההערכה.

סיכום

לסיכום, למדת להמיר את נתוני ה-XML לפורמט PDF כדוח באמצעות C# עם אפליקציית NET. בנוסף, דנו ביצירת הדוחות בפורמט DOC/DOCX מאותו XML באמצעות התבנית. לאחר קריאת סדרה זו של פוסטים להפקת דוחות; הפק דוחות PDF ו-MS Word מ-JSON, CSV, XML, אתה יכול לפתח יישום NET בניית דוחות משלך.

למידע נוסף על GroupDocs.Assembly, אפשרויות ודוגמאות, בקר בתיעוד ומאגר GitHub. לשאלות נוספות, צור איתנו קשר דרך הפורום.

ראה גם