Deploying ASP.Net 2.0 Web site to Production Server: Part I


Deploying ASP.NET 2 web site is the first issue facing the developer after finishing to create a web site is how to deploy the web site to a remote/Production server.
In the first part we will discuss how to move membership tables from the aspnetdb database to be apart of our database that our web site communicates with it.
In the second part, we will go in detail to configure our web site to change its default settings to read from our database, not from aspnetdb database.
  • Visual Studio 2005
  • MS SQL 2005 Express Edition
  • MS SQL 2005 Management Studio
Most of ISP or Hosting Servers don't support SQL Server Express Edition on their production server.
VS 2005 by default stores all security configuration and membership tables on a database called aspnetdb inside App_Data folder that created after the first run of the configuration tool.
This database used the SQLEXPRESS instance not SQL Server instance on your machine.
For this reason, the developer should configure his db and web site to read from his database not from the SQL express before deploying his web site.
ASP.Net 2 provides us with a set of tools, one of them is the configuration required to any 2 web site.
Any web site has to contain tables that store the users and roles.
By default, ASP.Net stores all the information that contains the users and roles on the SQL Express instance that installed by default when you install VS 2005.
This part of the article gives you a step by step to how to move Membership tables from MS SQL express Edition to your database that you are used on your web site. 
Moving membership tables from SQL express to your DB
Before starting to deploy your web site you have to move all the tables created when you run security configuration tool.
You run configuration tool, by clicking it from solution explorer, or from website menu --> configuration tool.
After running the configuration tool, will add app_Data folder on the web site and aspnetdb database will be added over there.
All the roles, users, application configuration you have made is stored on these tables.
And this DB is a separate database than you are used on your web site.
What you have to do is move all these tables from aspnetdb to your db. provides a tool out of the box to move all these tables to any database you want to move to.
To run this tool, open VS 2005 command prompt and type this command:
Welcome window will appear to start setup membership database. 
Click next.
Click next.
The first option provides to create all the membership tables to the selected database the will be selected further.
If you select to remove the application service, this means that all membership tables will be removed from the selected database.
Make sure on this step, if you do this step by mistake you have to start configuration tool again and create your roles and users, then move it again to your database.
Select the server name and the authentication type then select the database, click Next.
Confirmation message will appear, click next again.
At this step, the membership tables were created on your database.
After finishing creating membership tables on your database, open the SQL management studio to make sure those tables created successfully.
In this part we create the membership tables by using one of the tools that shipped with VS 2005 to create the membership tables by the wizard.
In the second part we will discuss in detail how we prepare our web site before deploying on production/remote server to change all the membership default settings by reading from our database which contains the membership tables, not from the aspnetdb database.

Similar Articles