不同点

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. IO中手机旋转事件的传递

    UIApplication -> delegate -> widnow -> rootViewController

  2. Jsp request

    <%@ page language="java" import="java.util.*" pageEncoding="GB18030" ...

  3. c语言构建动态数组

    #include <stdio.h> #include <stdlib.h> int main(void) { int len; int * arr; printf(" ...

  4. cellForRowAtIndexPath方法不执行的那些坑

    今天用到了uitableview,是xib形式的.不过cellForRowAtIndexPath方法死活不执行,检查了返回的row数量,section的数量,数据源,代理都没问题,不过cellForR ...

  5. redis基础操作

    /** * redis的Java客户端Jedis测试验证 * * @author */ public class Test { /** * 非切片客户端链接 */ private Jedis jedi ...

  6. SATA接口硬盘加密器

    加密卡置于主板与硬盘.光驱之间,透明实时地对写入数据进行加密,对读出数据进行解密,有效防止信息被窃.未经授权的阅读和修改,以及硬盘.光盘丢失.被盗.废弃.非法用户访问而引发的敏感信息泄密问题,为用户打 ...

  7. windbg vmware win7联机调试环境搭建

    接下来设置虚拟机启动模式,可以直接设置现在的虚拟机启动项为debug模式 或者直接新建一个启动项目 bcdedit /dbgsettings {serial [baudrate:value][debu ...

  8. pyopenssl

    https://pyopenssl.readthedocs.org/en/stable/ pyopenssl是一个封装了openssl的python模块. 使用它可以方便地进行一些加解密操作. 1.产 ...

  9. Pyhon之常用操作符 - 零基础入门学习Python006

    Pyhon之常用操作符 让编程改变世界 Change the world by program 今天我们来谈谈Python之常用操作符,在此之前的一些例子中,大家已经看到Python可以完成简单的算术 ...

  10. My Eclipse 自动提示

    1.My Eclipse 自带代码提示快捷键 “ alt+/”. 2.输入即提示:window-->preferences-->java-->Editor 展开后点击Content ...