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

    WS 型开发的优点:

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

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

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

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

    允许混合使用语言。

    WP型开发的优点:

    文件管理比较严格,不会有什么乱七八糟的东西出现,部署的时候不需要源代码文件,因为已经被预编译进DLL中了。当然WS型也可以使用预编译工具预编译后再部署。

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

    WP型项目更容易迁移。

  • 相关阅读:
    函数对象、名称空间与作用域
    函数
    leetcode语法练习(二)
    leetcode语法练习(一)
    字符编码与文件操作
    集合类型内置方法与总结
    列表,元组与字典类型
    数据类型内置方法之数据类型与字符串类型
    [SVG实战]饼图全面解析
    [JavaScript语法学习]重新认识JavaScript
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2458011.html
Copyright © 2020-2023  润新知