web.application,web应用和web网页的区别
一个是File-New-Project-ASP.NET网络应用
另一个是文件-新建-网站。
2.项目结构的不同方式
web将生成一个. csproj项目文件来记录一些编译和调试设置。
网站只是一个文件目录。
3.释放;排放;发布
两者都可以通过“publish”发布,这样它们将被预编译,相应的dll文件将在bin目录中生成。网站的响应由dll和aspx页面完成。
该网站还可以发布aspx页面以及。没有bin目录的cs,请求页面时会编译页面。不建议使用这种方法。
4.不同的代码细节
web应用程序:% @ Page Language= c# AutoEventWireup= true code behind= default . aspx . cs inherits= myweb project。_Default Trace=False %
网站:% @ Page Language= c# AutoEventWireup= true codefile= Default . aspx . cs inherits= _ Default %
另外,除了同名的ASPX文件和CS文件之外,Web项目中的每个页面还有一个名为*.aspx.desinger.cs的文件,该文件包含页面上所有控件的声明。在网站类型的应用程序中没有这种东西。因为这部分代码是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-type也可以进行预编译,然后使用预编译工具进行部署。
允许自定义部署过程,该过程可以与MSBuild工具一起使用,并允许项目的自动化和自定义编译。此外,可以更有效地控制生成的程序集,并且可以对其进行适当的命名或签名。WS生成一个随机的程序集名称,这要求插件WebDeployment生成单个程序集。
WP项目更容易迁移。