מאמר זה מתייחס לבעיה של עיצוב נתוני JSON גולמיים לפורמט דוח בר ייצוג וקל להבנה בתוך יישום NET. אנו נמיר את נתוני ה-JSON לדוחות PDF ו-DOCX ב-C# באמצעות תבניות פשוטות.

צור דוח PDF או Word מ-JSON ב-CSharp

.NET API להפקת דוחות

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

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

PM> Install-Package GroupDocs.Assembly

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

נתחיל עם השלבים שיובילו אותך להמיר נתוני JSON לדוח ה-PDF המעוצב ב-C#.

  • קבל מקור נתונים של JSON
  • הגדר תבנית לפי נתוני JSON
  • ספק מקור נתונים ותבנית JSON לקוד C# פשוט להפקת דוחות.

נתוני JSON

ראשית, נתוני JSON לדוגמה הבאים משמשים להפקת דוחות PDF המציגים מנהלים ולקוחותיהם ופרטים בהתאמה.

\[
	{
		"Name":"John Smith","Contract":\[
		{"Client":{"Name":"A Company"},"Price":1200000},
		{"Client":{"Name":"B Ltd."},"Price":750000},
		{"Client":{"Name":"C & D"},"Price":350000}\]
	},
	{
		"Name":"Tony Anderson","Contract":\[
		{"Client":{"Name":"E Corp."},"Price":650000},
		{"Client":{"Name":"F & Partners"},"Price":550000}\]
	},
	{
		"Name":"July James","Contract":\[
		{"Client":{"Name":"G & Co."},"Price":350000},
		{"Client":{"Name":"H Group"},"Price":250000},
		{"Client":{"Name":"I & Sons"},"Price":100000},
		{"Client":{"Name":"J Ent."},"Price":100000}\]
	}
\]

תבנית

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

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

שלבי C# להמרת דוח JSON ל-PDF

השלבים הבאים של קוד C# הופכים את ההמרה של נתוני JSON לדוח PDF לפי התבנית שהוגדרה אוטומטית.

  • הגדר נתוני JSON, קובץ התבנית ונתיבי קובץ דוח פלט PDF.
  • הצג את JsonDataSoure עם קובץ הנתונים JSON.
  • צור DataSourceInfo עם JsonDataSource מוגדר.
  • התקשר לשיטת AssembleDocument של המחלקה DocumentAssembler כדי להפיק את דוח ה-PDF מנתוני ה-JSON והתבנית שהוגדרה.
// הפק דוח PDF מנתוני JSON באמצעות תבנית TXT ב-C# עם GroupDocs.Assembly API
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
const string strDataSource = "dataPath/ManagerData.json";
const string strDocumentTemplate = "templatePath/template.txt";
const string strDocumentReport = "reportsPath/reportFromJSON.pdf";
// הצג מקור נתונים של JSON
JsonDataSource dataSource = new JsonDataSource(CommonUtilities.GetDataSourceDocument(strDataSource));
// להפיק דוח
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate),
    CommonUtilities.SetDestinationDocument(strDocumentReport),
    new DataSourceInfo(dataSource, "managers"));

הקוד יפיק את דוח ה-PDF כפי שמוצג באיור שלמעלה. אתה יכול גם לבדוק ומעלה ודוגמאות דומות ממאגר GitHub.

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

באופן דומה, בדומה להפקת דוח ה-PDF שלמעלה, תוכל ליצור את דוח DOCX על ידי ביצוע השלבים הבאים:

  • הגדרת אותה תבנית בפורמט DOCX.
  • הגדר את פורמט מסמך דוח הפלט כ-DOCX.
  • שאר הקוד יישאר זהה כדי להפיק דוח MS Word DOCX מנתוני JSON.
// צור דוח Word מנתוני JSON באמצעות תבנית DOCX ב-C# עם GroupDocs.Assembly API
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
const string strDataSource = "dataPath/ManagerData.json";
const string strDocumentTemplate = "templatePath/template.docx";
const string strDocumentReport = "reportsPath/reportFromJSON.docx";
// הצג מקור נתונים של JSON
JsonDataSource dataSource = new JsonDataSource(CommonUtilities.GetDataSourceDocument(strDataSource));
// להפיק דוח
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strDocumentTemplate),
    CommonUtilities.SetDestinationDocument(strDocumentReport),
    new DataSourceInfo(dataSource, "managers"));

לפרטים נוספים, אפשרויות ודוגמאות, בקר במאגר תיעוד ומאגר GitHub. לשאלות נוספות, צור קשר עם התמיכה החינמית בפורום.

סיכום

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

ראה גם