With the release of TX Text Control 33.0, we are pleased to introduce TXTextControl.Web.Server.Core, a major upgrade in the way the Document Editor works on the backend. Previously, in TX Text Control 32.0 and earlier, the synchronization service required for the Document Editor was only available as a Windows service. This has now been replaced with a pure .NET 8 application, providing greater flexibility, cross-platform compatibility, and multiple deployment options.
What is TXTextControl.Web.Server.Core?
TXTextControl.Web.Server.Core is a lightweight .NET 8 application that serves as the backend for the TX Text Control Document Editor. It acts as a web server that enables the synchronization for document editing in the editor. Here are the key benefits:
- Cross-platform: Runs on both Windows and Linux.
- Multiple deployment options: Can be deployed on Azure App Services, virtual machines, containers (Docker, Kubernetes), or bare-metal servers.
- Flexible execution: Can be run as a standalone application, a Windows Service, or a Linux daemon.
- Lightweight & scalable: Designed for modern cloud and containerized environments.
Why the Change?
The transition from a Windows-only service-based architecture to a cross-platform .NET 8 Web application was driven by the need for greater flexibility and modernization. Support for Linux environments has expanded deployment options, particularly for containerized and cloud-based solutions.
The adoption of .NET 8 brings notable improvements in performance, security, and scalability, making it a more robust choice for modern applications. Developers now have the freedom to choose whether to host their document editor backend on-premises or in the cloud, adapting to their specific infrastructure needs. In addition, the move improves the developer experience by removing the complexity of managing Windows services, allowing the application to be deployed and run like any other .NET Web API.
Deployment Options
One of the main advantages of TXTextControl.Web.Server.Core is its flexibility in deployment. The backend required to host the document editor is a .NET application assembly called TXTextControl.Web.Server.Core.dll. This application must be deployed along with additional files required for the web server to function properly.
A very simple way to deploy this web server is described in our Getting Started tutorials, where the required files are added to the project and the TX Text Control files are automatically copied by the NuGet package.
Learn More
In this article, we will create a simple document editor application using the Document Editor component from the TX Text Control .NET Server for ASP.NET product. We will use ASP.NET Core and run the application on Linux using Windows Subsystem for Linux (WSL).
Getting Started: Document Editor with ASP.NET Core and Linux WSL Support
But in other scenarios, you may want to deploy the backend separately or independently from your consuming application. To run the web server, the following files must be provided:
TXTextControl.Web.Server.Core Files
These files contain the web server application and are located in the TX Text Control installation folder:
C:\Program Files\Text Control GmbH\TX Text Control 33.0.NET Server for ASP.NET\Assembly\net8.0\
- TXTextControl.Web.Server.Core.dll: The main assembly that contains the web server.
- TXTextControl.Web.Server.Core.Process.dll: The assembly that hosts web server instances.
- TXTextControl.Web.Server.Core.config.json: The configuration file for the web server.
- TXTextControl.Web.Server.Core.deps.json: The dependency file for the web server.
- TXTextControl.Web.Server.Core.Process.deps.json: The dependency file for the web server process.
- TXTextControl.Web.Server.Core.Process.runtimeconfig.json: The runtime configuration file for the web server process.
- TXTextControl.Web.Server.Core.runtimeconfig.json: The runtime configuration file for the web server.
TX Text Control Files
The three additional files in the same folder are also required:
- TXDocumentServer.Core.dll
- TXTextControl.Core.dll
- TXTextControl.Server.Core.dll
From the Assembly folder, the following files are required:
C:\Program Files\Text Control GmbH\TX Text Control 33.0.NET Server for ASP.NET\Assembly\
- TXBarcode.dll
- TXDrawing.dll
- TXImageProvider.dll
- txpdf.dll
- TXSVGResources.dll
Native Linux or Windows Dependencies
For Linux deployments, all native dependencies are required from the binunix folder:
C:\Program Files\Text Control GmbH\TX Text Control 33.0.NET Server for ASP.NET\Assembly\binunix\
For Windows deployments, all native dependencies are required from the bincore64 folder:
C:\Program Files\Text Control GmbH\TX Text Control 33.0.NET Server for ASP.NET\Assembly\bincore64\
For Windows, the following files from the bin64 folder are also required:
- txdomprs.dll
- txsvggen.dll
Fonts
In order to use the backend, the fonts must be deployed. Copy the fonts folder from the TX Text Control installation folder:
C:\Program Files\Text Control GmbH\TX Text Control 33.0.NET Server for ASP.NET\Assembly\fonts\
Starting the Web Server
Once the required files are deployed, the web server can be started using the following command:
dotnet TXTextControl.Web.Server.Core.dll
The .NET 8 runtime must be installed on the machine where the web server is running. The web server listens on port 4282 by default. This can be changed in the configuration file TXTextControl.Web.Server.Core.config.json.