Web网站与Web应用程序区别(ASP.NET)

【区别一】

项目就是一个应用程序。在VS中查看的时候,项目中建立的一般处理程序,有两个文件。网站只有一个。
在这里插入图片描述

【区别二】

项目中的一般处理程序有命名空间,而网站中的没有。
在这里插入图片描述

WEB网站每一个页面(ashx页面)都是一个独立的程序,一个页面出错了不会影响到另外一个页面。但是项目中建立完一个文件(或修改了一个文件),一定要重新生成,生成的目的就是将项目生成对应的dll文件放在bin/Debug目录下(并且所有的类放在了该程序集中。),如果项目中的一个文件出错了,是没有办法生成成功的。

原因:

网站中每个页面(aspx,ashx)都生成对应的程序集,名称是随机的,当文件建立保存以后,请求会自动保存一下。如果你对文件中的代码改动了,Assembly.GetExecutingAssembly().Location
会重新编译生成一个新的程序集,如果没有改动,则不会生成新的.(在Web网站中的一个一般处理程序中获取当前一般处理程序文件所生成的dll文件.如果一般处理程序中的代码改变了那么重新生成,没有变化则不会重新生成。

所在Web应用程序中修改了代码以后一定要重新生成,不然修改后的代码不会生成到程序集中,程序集中可能还是旧的内容。

为什么网站不需要命名空间?

命名空间就是为了区分类同名的情况,而网站一个文件就是一个独立的程序,所以不会出现类重名的情况.

【区别三】

在网站中写SqlHelper(定义普通的类)必须放在App_Code文件夹中,而应用程序直接建就行了,不要建立App_Code文件夹。

原因:

该类最终会生成到程序集中。但是在网站就必须放在App_Code文件夹下,原因是,我们请求网站的一个一般处理程序时会自动编译,但是一个不同的类是不同被请求的,所以也就没法编译。但是放在app_code文件夹中会在请求某个一般处理程序时自动被编译。但是项目不需要了,因为最终会生成到一个程序集中。
小网站可以用Web网站,因为文件比较少,请求的时候出现错误,直接修改。不关心其它页面。但是大项目中用到的文件特别多,如果建成WEB网站那么维护起来很痛苦,但是建成WEB项目可以统一生成,这时如果出错了,也很容易知道哪个文件出错了,当所有的文件都编译通过了才能进行访问,这是与WEB网站不同的地方

【区别四】

网站编译的过程:如果写的代码是一样的,那么网站与项目编译的程序集是一样的。编译的过程不一样,项目是手动。而网站是自动。

【总之】

大网站比较适合用WebApplication项目,小网站比较适合用WebSite项目


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值