不同点

1. 创建方式不同

一个是FILE->NEW->PROJECT->ASP.NET WEB APPLICATION 
另外一个是 FILE->NEW->WEBSITE

2. 项目结构方式不同

web application 会产生.csproj项目文件,来记录一些编译调试设置

而 web site 就只是一个文件目录

3. 发布

两者都可以通过"publish"来发布, 这样就都会预编译, 生成对应的dll文件到bin目录下。网站的响应由dll和aspx页面合作完成.

4. 代码细节不同

web application :<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs"Inherits="MyWebProject._Default" Trace="False" %>

web site:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

另外, Web Project 中的每一个页面除了ASPX文件,同名CS文件,还有一个叫: *.aspx.desinger.cs 文件,它里面包含了页面上所有控件的声明。

而Web Site类型的APP中就没有这样东西。因为这部分代码由ASP.NET在编译时生成。

5. 引用不同

在程序集引用这一方面上,WS的所有程序集引用都是记录在 web.config 文件里面的,这样ASP.NET在编译时解析引用时使用。

但是 WP 中的程序集引用是保存在项目文件 *.csproj中的,VS在编译代码时要使用它们。

但有两个例外:System.core.dll System.Web.Extension.dll 对引用是放在web.config中的,因为它们包含指定新的配置设置所需要的类。

WS 型开发的优点:

动态编译该页面,马上可以看到效果,不用编译整个站点(主要优势)

部署简单,只要把网站目录整个复制到WEB服务器即可。

简化了文件管理,任何页面文件,增删随意,不需要编辑项目文件,或者运用VS。

简化了团队协作,可以不同人写不同的页面,到时直接放过来就可以了。

简化了调试,WP型项目中,即使只修改了某个页面也必须重新编译整个应用程序。而WS中每个文件都单独编译且页面只在第一次请求它的时候才编译。

允许混合使用语言。

WP型开发的优点:

可以将网站拆分成多个项目以方便管理,适合大型项目开发。项目更容易迁移。

文件管理比较严格,部署的时候不需要源代码文件,因为已经被预编译进DLL中了。当然WS型也可以使用预编译工具预编译后再部署。

允许自定义部署过程,可以和MSBuild工具一起使用,允许项目的自动化和定制化编译。此外,可以对生成的程序集进行更有效的控制,可以进行合适的命名或者签名。而WS生成随机的程序集名,需要通过插件WebDeployment才可以生成单一程序集。

店长推荐

它们在使用上不同而异,技术上是一样的,小规模的开发可以用website,大规模的开发推荐用WebApplication.

PS:
在建立一个项目时,有多个页面,你可以在项目属性的web选项中设定特定页为启动项也可以设定当前页为启动项,如果为当前页是启动项,则把当前打开的页面做为当前页。
 
 
调试的默认浏览器设置:
  新建一个html,右击查看方式,设置默认浏览器即可。

WebApplication和WebSite的区别的更多相关文章

  1. WebApplication与WebSite区别

    1. WebApplication(Web应用程序)和WebSite(网站)的区别:WebSite是为了兼容从ASP转过来的开发人员的习惯而存在的,用起来简单,例如:不需要创建命名控件.C#代码修改以 ...

  2. WebApplication和WebSite的简单区别

    初步认识网站和网站应用程序区别 1. 网页头部文件 网站 <%@ Page Language="VB" AutoEventWireup="false" C ...

  3. asp.net初识

    请求=========处理=============响应 不是服务器读网页.表单,而是我们向服务器提交数据 1.asp.net 服务器端控件是ASP.NET对HTML的封装,ASP.NET会将服务器端 ...

  4. 一个菜鸟的ASP.NET观光路线图

           作为一个成长的"菜鸟".我的习惯是,每过一个阶段,都对自己的知识体系进行一次概括. 这篇博文是一个总结帖,我将把我的学到的东西,按照一定顺序串联在一起.        ...

  5. web项目的两个创建形式website和webapplication(转)

    前言 在利用VS2010创建web项目的时候,会有两个选择.可以选择直接创建website网站,还可以选择使用 webapplication应用程序.刚刚接触web开发,看到这两个就疑惑了,既然是都可 ...

  6. web项目的两个创建形式website和webapplication

    前言 在利用VS2010创建web项目的时候,会有两个选择.可以选择直接创建website网站,还可以选择使用 webapplication应用程序.刚刚接触web开发,看到这两个就疑惑了,既然是都可 ...

  7. WebSite和WebApplication的区别

    1. WebApplication(Web应用程序)和WebSite(网站)的区别:WebSite是为了兼容从ASP转过来的开发人员的习惯而存在的,用起来简单,例如:不需要创建命名控件.C#代码修改以 ...

  8. 【ASP.NET】website转webapplication

    *以下操作都以VS2013为参考: #新建两种web项目 1.添加webapplication项目: 2.添加website项目: #比较两种web项目新建的webform页面的不同点: 1.文件目录 ...

  9. 菜鸟疑问之新建网站与新建web应用程序区别

    学习asp.net一定少不了这困惑:新建网站与新建web应用程序有什么区别? 新建web应用程序 新建网站 呵呵,其实从名字看一个是webApplication,一个是webSite.名字不同罢了? ...

随机推荐

  1. C#遍历Object各个属性含List泛型嵌套。

    同事遇到一个问题:在做手机app接口时,返回JSON格式,json里面的数据属性均是string类型,但不能出现NULL(手机端那边说处理很麻烦,哎).Model已经创建好了,而且model的每个属性 ...

  2. C# 大小写转换

    全部大写: string upper = str.ToUpper() 全部小写: string lower = str.ToLower(); str是需要转换的字符.

  3. this函数的理解

    Javascript的this用法 this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如, function test(){ this. ...

  4. WebApi2官网学习记录---Configuring

    Configuration Settings WebAPI中的configuration settings定义在HttpConfiguration中.有一下成员: DependencyResolver ...

  5. Visual Studio/vs2013 正忙

    打开VS解决方案时一直显示Visual Studio正忙,项目卡在初始化,此后试了很多方法,将项目拷贝到领一个磁盘当中再打开就可以直接打开了

  6. Asp.net mvc4 + HighCharts + 曲线图

    前端代码: @{ Layout = null;}<!DOCTYPE html><html><head> <title></title> &l ...

  7. EasyShortcut Easyshortcut easyShortcut 简介

    关于EasyShortcut Easyshortcut easyShortcut 简介: 参考: http://chunsheng.me/EasyShortcut/

  8. py2exe生成exe后,运行exe时提示No module named * 的解决办法

    一个pymssql 的程序在解释器上运行正常,但是用py2exe打包后,提示 ImportError: No module named _mssql 百度了半天无果,然后bing,结果bing还是比百 ...

  9. python yield 理解

    在别人的代码中看到yield这个关键字,看了几篇资料,说一下个人理解. 包含yield 关键字的函数成为一个迭代器,yield跟return的位置一样,只不过每次返回结果后,并没有退出,而是等待下一次 ...

  10. 制作 leanote docker 镜像

    leanote 使用 mongodb 存储数据,如果把 mongodb 单独做成一个镜像,初始化数据时比较麻烦,所以最后还是决定把 mongodb 和 leanote 放到同一个镜像里边. docke ...