Click here to Skip to main content
Licence 
First Posted 31 Aug 2002
Views 317,112
Bookmarked 100 times

Deploying Web Applications using Visual Studio .NET

By | 31 Aug 2002 | Article
Deploying an ASP.NET project using the Visual Studio .NET Windows Installer

Introduction

Deployment is a great feature in Visual Studio .NET which allows you to deploy your applications by creating a Setup Program. You can make a setup project for both your Windows and Web applications.

Using this feature for deploying has many advantages for example:

  • Installed applications can be uninstalled completely.
  • If an error occurred through installation process, the system goes back to the state of before the installation.
  • Adding user interface to setup project easily.
  • Making setup project on different kinds of distribution media such as CD or floppy disks.
  • Easy reinstallation when installed files get corrupted.

In this article, I will create a simple ASP.NET Web project and then create a setup project for deploying that.

First of all create an ASP.NET Web project using Visual Studio .NET and name it for example "TestWeb". In the WebForm designer (WebForm1.aspx). Drag and drop a Label and a button server control. Double click on button and then add the following code and compile the project.

private void Button1_Click(object sender, System.EventArgs e)
{
    Label1.Text = "My first deployment web project";
}  

Creating the Web Setup project

After creating the web project or opening an existing web project, You can use VS.NET installer to create a Web Setup project. So do the following steps.

Add a Web Setup project to the solution through File/New/Project menu. Choose the Setup and Deployment Projects in Project Types tree control and after that select the Web Setup Project from Templates list box and name it WebSetup. Be aware of select the Add to Solution radio button.

Now the project is added to the Solution Explorer, and you can see the File System Editor. With File System Editor, you can add files and dependencies to the setup project and configure the location of installation.

Now you must add project files and dependencies to the setup project. For this reason right click on the Web Application Folder in File System Editor and choose Add/Project Output from the menu (You can do this through Action menu as well). Then select the Primary Output and Content Files from the Add Project Output Group dialog.

By pressing the OK button the primary output and content files of the TestWeb project will be added to the Application Folder automatically. Also the dependencies are automatically detected in the Solution Explorer. As you can see the dotnetfxredist_x86_enu.msm merge module is added to the WebSetup project. This merge module includes all assemblies of .NET framework. The exclude property of dotnetfxredist_x86_enu.msm is TRUE by default. In our case we suppose that .NET runtime is already installed on the target machine, otherwise you can define .NET Framework Lauch Condition in your setup project.

In the properties window, set the DefaultDocument property to "Webform1.aspx" page.

It's now time to build your web setup. So right click on WebSetup on Solution Explorer and choose Build. With a successful build, you can find the following files in the Debug or Release directory (depending on your build settings).

By executing Setup.exe the TestWeb project will be installed on the target system. Since we excluded .NET framework from our setup project, we must install the TestWeb application on the system with .NET framework installed. After installation process you can see TestWeb in IIS directory.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

Majid Shahabfar

Software Developer (Senior)

Iran (Islamic Republic Of) Iran (Islamic Republic Of)

Member

My programming experience includes Visual C++, C#, ASP.NET and Silverlight. I'm developing software application under .NET technology now and I enjoy keeping my skills up-to-date.

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
QuestionAccessing The Deployed Project PinmemberAndile Mkhumane3:29 10 Apr '12  
QuestionHow to Generate the URl. PinmemberAustinRocks201017:55 10 Mar '10  
GeneralNot Bad , i could Follow PinmemberVuyiswa Maseko2:31 22 Jan '09  
GeneralThanks! PinmemberTony Rabun, MCITP8:32 30 Jul '08  
QuestionInclude new Folder Pinmemberaigama21:51 27 Nov '07  
AnswerRe: Include new Folder PinmemberMajid Shahabfar22:21 27 Nov '07  
GeneralRe: Include new Folder Pinmemberaigama22:25 27 Nov '07  
GeneralRe: Include new Folder Pinmemberaigama2:14 28 Nov '07  
Questioni need how to deployee PinmemberPrabhukarthik19:54 18 Apr '07  
Questionplease help PinmemberMember #383479820:56 13 Mar '07  
Generaladd folder on target machine Pinmemberpuiutzz1:53 5 Feb '07  
Generaladd folder on tare Pinmemberpuiutzz1:53 5 Feb '07  
GeneralCreate Web setup project Pinmemberkm.Sumit23:45 4 Feb '07  
GeneralCreate Web setup project Pinmemberdtchinh22:53 6 Nov '07  
GeneralDotNetFrameWork in Web Setup Project Pinmembernarcis050519:09 26 Sep '06  
QuestionAdd comtent files to set up project PinmemberArch22k21:25 30 Aug '06  
QuestionHow to create the asp.net setup Pinmemberstrongmind21:07 9 Jul '06  
GeneralMost helpful PinmemberIyad Abu Abdu2:48 30 Mar '06  
GeneralAdd/Project Output and Primary Output and Content Files Pinmemberamalien9:32 5 Mar '06  
Generalhi all Pinmemberzeny8422:16 27 Feb '06  
GeneralRe: hi all PinmemberDY_public6:54 1 Mar '06  
GeneralRe: hi all PinmemberHimaBindu Vejella18:45 2 Apr '06  
GeneralDepoly manually at another PC Pinmembersugardaddy22:34 27 Nov '05  
GeneralRe: Depoly manually at another PC PinmemberRubysbox23:58 26 Mar '07  
GeneralContent Files PinsussAnonymous21:21 18 Oct '05  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web01 | 2.5.120517.1 | Last Updated 1 Sep 2002
Article Copyright 2002 by Majid Shahabfar
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid