Products Technologies Demo Docs Blog Support Company

Getting Started: ServerTextControl and MailMerge with ASP.NET Core

This article shows how to use the TX Text Control ASP.NET ServerTextControl and MailMerge classes within a .NET 6 application in Visual Studio 2022.

Getting Started: ServerTextControl and MailMerge with ASP.NET Core

The following tutorial shows how to create a .NET 6 ASP.NET Core web application that uses the ServerTextControl class and MailMerge to create documents.

Creating the Application

Make sure that you downloaded the latest version of Visual Studio 2022 that comes with the .NET 6 SDK.

  1. In Visual Studio 2022, create a new project by choosing Create a new project.

  2. Select ASP.NET Core Web App (Model-View-Controller) as the project template and confirm with Next.

  3. Choose a name for your project and confirm with Next.

  4. In the next dialog, choose .NET 6 (Long-term support) as the Framework and confirm with Create.

    Creating the .NET 6 project

Adding the NuGet Package

  1. In the Solution Explorer, select your created project and choose Manage NuGet Packages... from the Project main menu.

    Select Text Control Offline Packages from the Package source drop-down.

    Install the latest versions of the following package:

    • TXTextControl.TextControl.ASP.SDK

    ASP.NET Core Web Application

Using ServerTextControl and MailMerge

  1. Find the HomeController.cs file in the Controllers folder. Replace the Index() method with the following code:

    public IActionResult Index() {
    
      using (TXTextControl.ServerTextControl tx = new TXTextControl.ServerTextControl()) {
        tx.Create();
    
        // adding static text
        TXTextControl.Selection sel = new TXTextControl.Selection();
        sel.Text = "Welcome to Text Control\r\n";
        sel.Bold = true;
    
        tx.Selection = sel;
    
        // adding merge fields
        TXTextControl.DocumentServer.Fields.MergeField mergeField = 
          new TXTextControl.DocumentServer.Fields.MergeField() {
            Text = "{{company}}",
            Name = "company",
            TextBefore = "Company name: "
          };
    
        tx.ApplicationFields.Add(mergeField.ApplicationField);
    
        // alternatively load a template
        //TXTextControl.LoadSettings ls = new TXTextControl.LoadSettings() {
        //  ApplicationFieldFormat = TXTextControl.ApplicationFieldFormat.MSWord
        //};
    
        //tx.Load("template.docx", TXTextControl.StreamType.WordprocessingML, ls);
    
        // merge fields with MailMerge engine
        using (TXTextControl.DocumentServer.MailMerge mailMerge = 
          new TXTextControl.DocumentServer.MailMerge()) {
            mailMerge.TextComponent = tx;
            mailMerge.MergeJsonData("[{\"company\": \"Text Control, LLC\" }]");
          }
    
        // return result as HTML
        string result = "";
        tx.Save(out result, TXTextControl.StringStreamType.HTMLFormat);
    
        // alternatively save as PDF
        //byte[] baPdf;
        //tx.Save(out baPdf, TXTextControl.BinaryStreamType.AdobePDF);
    
        ViewBag.Document = result;
      }
    
      return View();
    }

Displaying the Results

  1. Find the Index.cshtml file in the Views -> Home folder. Replace the complete file with the following code:

    @{
        ViewData["Title"] = "Home Page";
    }
    
    @Html.Raw(ViewBag.Document)

Compile and start the application.

Stay in the loop!

Subscribe to the newsletter to receive the latest updates.

ASP.NET

Integrate document processing into your applications to create documents such as PDFs and MS Word documents, including client-side document editing, viewing, and electronic signatures.

ASP.NET Core
Angular
Blazor
JavaScript
React
  • Angular
  • Blazor
  • React
  • JavaScript
  • ASP.NET MVC, ASP.NET Core, and WebForms

Learn more Trial token Download trial

Related Posts

ASP.NETASP.NET CoreDocument Viewer

Getting Started: Document Viewer with ASP.NET Core

This article shows how to use the TX Text Control ASP.NET document viewer within a .NET 6 application in Visual Studio 2022.


ASP.NETASP.NET Core.NET 6

Getting Started: Document Editor with ASP.NET Core and .NET 6

This article shows how to use the TX Text Control ASP.NET document editor within a .NET 6 application in Visual Studio 2022.


ASP.NETASP.NET Core.NET 6

Getting Started: Document Viewer with ASP.NET Core and .NET 6

This article shows how to use the TX Text Control ASP.NET document viewer within a .NET 6 application in Visual Studio 2022.


ASP.NETASP.NET Core.NET 6

Using TX Text Control .NET Server with .NET 6

This article shows how to use the TX Text Control ASP.NET document editor and the ServerTextControl class within a .NET 6 application in Visual Studio 2022.


ASP.NETASP.NET CoreDOCX

Use MailMerge in .NET on Linux to Generate Pixel-Perfect PDFs from DOCX…

This article explores how to use the TX Text Control MailMerge feature in .NET applications on Linux to generate pixel-perfect PDFs from DOCX templates. This powerful combination enables…