Generally whenever we are trying to create new web project in visual studio we will found two options ASP.NET Web Application and Web Site. What is the difference between these two which one we need to select to create project in asp.net?
It’s choice of the people can go for web application or website we cannot say that which one is better because both is having advantages and disadvantages. Check below details for web aplication and website.
- If we create any class files / functions those will be placed anywhere in the applications folder structure and it is precomplied into one single DLL.
- In web application we have chance of select only one programming language during creation of project either C# or VB.NET.
- Whenever we create Web Application those will automatically create project files (.csproj or .vbproj).
- We need to pre-compile the site before deployment.
- If we want to deploy web application project we need to deploy only .aspx pages there is no need to deploy code behind files because the pre-compiled dll will contains these details.
- If we make small change in one page we need to re-compile the entire sites.
- By default explicit namespaces are not added to pages, controls or classes, but you can add them manually.
- If we create any class files/functions those will be placed in ASP.NET folder (App_Code folder) and it’s compiled into several DLLs (assemblies) at runtime.
- In website we can create pages in multi programming languages that means we can create one page code in C# and another page code in vb.net.
- Web Sites won’t create any .csproj/.vbproj files in project
- No need to recompile the site before deployment.
- We need to deploy both .aspx file and code behind file.
- If we make any code changes those files only will upload there is no need to re-compile entire site
- By default explicit namespaces are added to pages, controls and classes
when you want to create an Informational project, then go for Website and when you want to create an Interactive project that requires programmatic user input or data processing, and then go for Web Application.