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

מיזוג מסמכי Word ASP.NET

מיזוג מסמכי MS Word מרובים יכול להיות שימושי בשמירת מסמכים מאותו סוג בקובץ בודד, שילוב של מספר מסמכים לפני שיתוף, וכן הלאה. כדי לגרום לך להשיג זאת, נראה לך כיצד ליצור יישום ASP.NET למיזוג מסמכי MS Word (DOC/DOCX). יישום מיזוג מסמכי Word זה יכלול את התכונות הבאות:

  • מיזוג מסמכי MS Word למסמך אחד
  • הורד מסמכי Word ממוזגים בפורמט DOCX
  • הורד מסמכי Word ממוזגים בפורמט PDF

ספריית C# למיזוג מסמכי MS Word ב-ASP.NET

Aspose.Words for .NET היא ספריית עיבוד תמלילים עשירה בתכונות המאפשרת לך לעבד מסמכי MS Word בקלות. זה גם מאפשר לך למזג מסמכי Word מרובים למסמך אחד בתוך ASP.NET או כל יישום .NET/.NET Core. ניתן להתקין את Aspose.Words עבור NET באמצעות NuGet וכן להוריד כקובץ DLL.

PM> install-package Aspose.Words

מיזוג מסמכי MS Word ב-ASP.NET

להלן השלבים ליצירת יישום ASP.NET שיאפשר לך למזג שני מסמכי Word (DOC/DOCX) או יותר מבלי להשתמש ב-MS Office/Word.

  • צור יישום אינטרנט ליבה של ASP.NET ב-Visual Studio.
צור יישום אינטרנט ליבה של ASP.NET
  • בחר את יישום האינטרנט (Model-View-Controller) מרשימת התבניות.
בחר יישום MVC
  • התקן את ה-Aspose.Words עבור NET מ-NuGet Package Manager או Package Manager Console.
.NET API עבור השוואת Word
  • הכנס את הסקריפט הבא לקובץ index.cshtml שלך.
@{
    ViewData["Title"] = "Merge MS Word Documents in ASP.NET";
}

<div class="row">
    <div class="col-md-12" align="center">
        <h2 class="text-info">Merge Two or More Word DOC/DOCX Documents</h2>
        <p class="text-info">Merge MS Word documents and get the results in DOCX or PDF format.</p>
    </div>
</div>
<br />
<form asp-controller="Home" asp-action="UploadFiles" method="post" class="form-inline dropzone" enctype="multipart/form-data">
    <div class="row">
        <div class="col-md-12" align="center">
            <div>
                <input type="file" id="input-id" name="files" multiple accept=".doc, .docx" class="form-control file" data-preview-file-type="text" />
            </div>
        </div>
    </div>
    <hr />
    <div class="row">
        <div class="col-md-12" align="center">
            <div class="input-group-lg">
                <strong>Save As</strong>
                <select name="outputFormat" class="form-control">
                    <option value="DOCX">DOCX</option>
                    <option value="PDF">PDF</option>
                </select>
                <button type="submit" class="form-control btn btn-success">Merge and Download</button>               
            </div> 
        </div>
    </div>
</form>
<script>
    // גרור ושחרר אפשרויות תוסף
    $("#input-id").fileinput({ 'mainClass': "input-group-lg", 'showBrowse': true, 'showUpload': false, 'previewFileType': 'any', 'showClose': false, 'maxFileCount': 5, });
</script>
  • הכנס את הקוד הבא בכיתה HomeController.cs שלך.
public FileResult UploadFiles(List<IFormFile> files, string outputFormat)
{
	if (files.Count() <= 1)
	{
		// להציג הודעה כלשהי
		return null;
	}
	string fileName = "merged-document.docx";
	string path = "wwwroot/uploads";
	List<Document> documents = new List<Document>();
	// להעלות קבצים 
	foreach (IFormFile file in files)
	{
		string filePath = Path.Combine(path, file.FileName);
		// לשמור קבצים
		using (var stream = new FileStream(filePath, FileMode.Create))
		{
			file.CopyTo(stream);
		}
		// הוסף את כל המסמכים לרשימה
		documents.Add(new Document(filePath));
	}
	// טען מסמך Word ראשון
	Document doc1 = documents[0];
	for (int i = 1; i < documents.Count(); i++)
	{
    // מיזוג מסמכי Word
		doc1.AppendDocument(documents[i], ImportFormatMode.KeepSourceFormatting);
	}           

	var outputStream = new MemoryStream(); 
	if (outputFormat == "DOCX")
	{
		doc1.Save(outputStream, SaveFormat.Docx);
		outputStream.Position = 0;
		// החזר קובץ Word שנוצר
		return File(outputStream, System.Net.Mime.MediaTypeNames.Application.Rtf, fileName);
	}
	else
	{
		fileName = "merged-document.pdf";
		doc1.Save(outputStream, SaveFormat.Pdf);
		outputStream.Position = 0;
		// החזר קובץ PDF שנוצר
		return File(outputStream, System.Net.Mime.MediaTypeNames.Application.Pdf, fileName);
	}
}
  • כלול את קובצי ה-JS וה-CSS הבאים של תוסף גרור ושחרר בתוך תג head של קובץ layout.cshtml.
<!--drag and drop file plugin-->
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/5.0.9/css/fileinput.min.css" media="all" rel="stylesheet" type="text/css" />
<script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-fileinput/5.0.9/js/fileinput.min.js"></script>
<!--end of drag and drop-->
  • בנה את היישום והפעל אותו בדפדפן שלך.
מיזוג מסמכי ASP.NET Word

ASP.NET יישום מיזוג מסמכי Word - קוד מקור

הורד את קוד המקור של יישום ASP.NET Word Document Merger מכאן.

ספריית עיבוד תמלילים C# - קבל רישיון חינם

קבל את רישיון זמני ללא תשלום והשתמש ב-Aspose.Words עבור .NET בחינם.

מאמר קשור