Articles in this section
Category / Section

How to mail merge Word document in Azure Cloud Services

3 mins read

Mail merge is a process of merging data from data source to a Word template document. Syncfusion Essential DocIO is a .NET Word library used to generate reports like invoice, payroll, letter, and more by performing mail merge faster in a batch process without Microsoft Word or interop dependencies. Using this library, you can mail merge Word document in Azure Cloud Service.

Steps to Mail merge Word document programmatically:

  1. Create a new Azure Cloud Service application Project. Create Azure Cloud Service application in Visual Studio
  2. In new Microsoft Azure Cloud Service dialog, select ASP.NET Web Role, and click the right arrow button to add into your solution. You can also rename the role using context menu by right-clicking the selected role. Select ASP.NET Web Role in Azure Cloud Service
  3.  Select an empty project template for creating ASP.NET applications. Select empty project template in ASP.NET Web application
  4. Finally, the Cloud Service project is created successfully as shown in the following screenshot. Azure Cloud Service project in Solution explorer.
  5. Install the Syncfusion.DocIO.AspNet NuGet package as a reference to your ASP.NET Web project from NuGet.org. Add DocIO NuGet package reference to the project
  6. Add a new Web Form in your project. Right-click the project, select Add > New Item, and add a Web Form from the list. Name it as Default.
  7. Add a new button in the Default.aspx as shown in the following code sample.
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="MailMergeWord.Default" %>
    <!DOCTYPE html>
     
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form2" runat="server">
        <div>
        <asp:Button ID="Button1" runat="server" Text="Create Document" OnClick="OnButtonClicked" />
        </div>
        </form>
    </body>
    </html>
    
  1. Include the following namespace in your Default.aspx.cs file.
    using Syncfusion.DocIO;
    using Syncfusion.DocIO.DLS;
    using System;
    using System.Web;
    
  1. Include the following code in the click event of the button in Default.aspx.cs to mail merge Word document and download it.
    //Opens the Word template document
    using (WordDocument document = new WordDocument(ResolveApplicationDataPath("/") + "/Letter Formatting.docx"))
    {
        string[] fieldNames = { "ContactName", "CompanyName", "Address", "City", "Country", "Phone"};
        string[] fieldValues = { "Nancy Davolio", "Syncfusion", "507 - 20th Ave. E.Apt. 2A", "Seattle, WA", "USA", "(206) 555-9857-x5467" };
     
        //Performs the mail merge
        document.MailMerge.Execute(fieldNames, fieldValues);
     
        //Saves the Word file to disk in DOCX format
        document.Save("Result.docx", FormatType.Docx, HttpContext.Current.Response, HttpContentDisposition.Attachment);
    }
     
    //Get the path for Word template document
    protected string ResolveApplicationDataPath(string fileName)
     {
            //Data folder path is resolved from requested page physical path
            string dataPath = new System.IO.DirectoryInfo(Request.PhysicalPath + "..\\..\\Data\\").FullName;
            return string.Format("{0}\\{1}", dataPath, fileName);
    }
    

Publish in Azure Cloud Service

  1. In Solution Explorer, right-click the project and select Publish. Azure publish sign in wizard
  2. Create Cloud service and storage account. Create Cloud service and storage account
  3. Sign in with your Azure credentials. Go to Settings > create a new cloud service. Select the following details in the drop-down list and then click Next:
  • Environment > Production
  • Build Configuration > Release
  • Service Configuration > Cloud
  • Enable remote desktop, so that you can access the VM.

Azure publish setting wizard

  1. After enabling the remote desktop, it prompts to enter user credentials to connect remotely. Remote desktop configuration for cloud VM
  2. Select Diagnostic menu and enable the “Send diagnostics data to Application Insights” checkbox to easily diagnose the issues in Cloud service. Diagnostics settings for publish cloud service
  3. Click "Publish". Get the URL from the deployment result and test it. Azure Cloud Service deployment result
  4. Open the published Azure cloud app URL in browser to generate mail merged Word document in Azure Cloud Service. Output of Azure Cloud App URL

A complete working example of mail merge Word document in Azure Cloud Service can be downloaded from mail merge Word document.zip

By executing the program, you will get the Word document as follows. Mail merge output word document

Take a moment to peruse the documentation, where you will find basic Word document processing options along with features like mail merge, merge and split documents, find and replace text in the Word document, protect the Word documents, and most importantly PDF and Image conversions with code examples.

Explore more about the rich set of Syncfusion Word Framework features.

An online example to perform mail merge in Word document.

See Also:

Mail Merge Word document in Azure App Service

Mail Merge Word document in Azure functions v1

Mail Merge Word document in ASP.NET

Mail Merge Word document in ASP.NET Core

Mail Merge Word document in ASP.NET MVC

Note:

Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion license key in your application to use the components without trail message.

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments
Please sign in to leave a comment
Access denied
Access denied