web site 和 web application的区别

不同点

1. 创建方式不同

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

2. 项目结构方式不同

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

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

3. 发布

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

网站发布还可以无需bin目录, 将aspx页面和.cs的代码文件一起发布, 当请求页面的时候,这个页面才编译。不推荐这种方式。

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中的,因为它们包含指定新的配置设置所需要的类。

你可能感兴趣的:(Web,目录)