不同点

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. 纯CSS实现带小角的对话框式下拉菜单

    最近公司首页样式重写,头部下拉菜单改为了带小角的对话框式下拉菜单: 很多人可能会用图片,事实上纯CSS就能够实现: HTML: <!DOCTYPE html> <html lang= ...

  2. 方法覆盖(override)”的要点

    方法覆盖要求子类与父类的方法一模一样,否则就是方法重载(overload)!请自行编写代码测试以下特性:在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. 结论:          在“ ...

  3. MfC基础--绘图基础--win32

    1.vc使用的控件分为三类: windows标准控件--MFC对这些进行了再封装 ActiveX 控件 其他MFC控件类 2.CWind是所有窗口的基类 3.GDI也属于一种API,主要用于绘图,(G ...

  4. python 杂记

    class TestA(object): def __init__(self): print("A is initing"); def foo(self): print(" ...

  5. Hbase写数据,存数据,读数据的详细过程

    Client写入 -> 存入MemStore,一直到MemStore满 -> Flush成一个StoreFile,直至增长到一定阈值 -> 出发Compact合并操作 -> 多 ...

  6. Python之路第二天,基础(2)-基本数据类型

    一.Python数据类型 数 在Python中有4种类型的数,整数,长整数,浮点数和复数. 2是一个整数的例子 长整数不过是大一点的整数 3.23和52.3E是浮点数的例子.E标记表示10的幂.52. ...

  7. 学习memcached的一个网站

    http://www.ibm.com/developerworks/cn/java/j-memcached1/#resources

  8. MVC 学习随笔(一)

    Model的绑定. (一)使用NameValueCollectionValueProvider C# 对NameValueCollectionValueProvider的支持是通过下面的类实现的 // ...

  9. linux配置备忘

    ubuntu英文系统环境下,emacs输入中文设置:(http://www.cnblogs.com/pylemon/archive/2012/01/05/2312682.html) ~/.profil ...

  10. window系统查看端口被哪个进程占用

    ---恢复内容开始--- 1.在cmd窗口运行 netstat -ano | findstr 1099 找到进程PID 8408 杀死进程:taskkill -F -PID 8408 2.另外还找到进 ...