Deployment Tutorial
- 4 minutes to read
The aim of this tutorial is to provide step-by-step recommendations on how to deploy an XAF application in a production environment. It is presumed that you have already reviewed the In-Depth XAF WinForms & ASP.NET Web Forms Tutorial (Main Demo) Here, you will learn how to deploy the application you developed. Lessons in this document refer to the simple application (called MySolution) you developed while performing the lessons in the XAF Tutorial. Microsoft SQL Server is used as the database management system (DBMS). However, you can use any XAF application, such as one of the demo applications that ships with XAF, or your custom application. Similarly, you can use any DBMS supported by XAF.
Note
Use the Assembly Deployment Tool to analyze your project and obtain the list of assemblies you should deploy. Compare the assemblies the tool identifies to the redistributable assemblies list available in the End User License Agreement (EULA).
In a typical production environment, there are a number of computers playing various roles. Throughout this tutorial we use the following naming conventions:
- Developer Workstation - a PC with Microsoft Visual Studio and XAF installed. For instance, it can be your own workstation.
- End-User Workstation - one or more PCs with neither Microsoft Visual Studio nor XAF installed. Your aim is to deploy the XAF application to these workstations.
- Database Server - a server in which a DBMS is installed. Generally, End-User Workstations must have network access to this server.
- Web Server - a server in which Microsoft Internet Information Services (IIS) are installed. This server must have network access to the Database Server and be accessible from the end user’s local network or via the Internet, if required.
- Terminal Server - a server in which Microsoft Terminal Services are installed. This server must have network access to the Database Server and be accessible from the end user’s local network or via the Internet, if required.
Note
The Database, Web and Terminal Servers may be physically located on the same server.
Deployment Tutorial Contents
Choose an Appropriate Location for Deployment
This lesson helps you to decide where to deploy your Windows Forms application (to each End-User Workstation or to a Terminal Server), and where to deploy your ASP.NET Web Forms application (to a local Web Server, to remote hosting or to a remote dedicated server).
Lessons on Various Deployment Methods
Xcopy Deployment of a Windows Forms Application
Xcopy Deployment of an ASP.NET Web Forms Application
Publish Wizard Deployment of a Windows Forms Application
Publish Web Deployment of an ASP.NET Web Forms Application
Setup Project Deployment of a Windows Forms Application
Setup Project Deployment of an ASP.NET Web Forms Application
It is not necessary to follow all of these lessons. You can choose and apply the most suitable method.
Set Up the Database Connection
You will learn how to connect your application to a Database Server, and how to create the initial database. Information on how to resolve database and application version mismatches is also provided.
-
This lesson provides an introduction to database security. You will learn how to grant access to an application database only to your XAF application users.
Connect Clients to the Terminal Server
You will learn how to connect remote desktop clients to the Terminal Server with the Windows Forms application installed.
-
You will learn how to update your application.
Deployment Troubleshooting Guide
A list of common deployment problems and ways of resolving them.
If you have no access to a real production environment, but still want to perform this tutorial for training purposes, you can use the DBMS and Web Server installed in the Developer Workstation. However, in this instance, it is recommended that you create a virtual LAN using virtualization software, so that you can perform all of the steps described in the tutorial.
To begin, refer to the Choose an Appropriate Location for Deployment topic.