请告诉我global.asax和global.asax.cs之间的区别?
和
如果我在我的解决方案资源管理器中单击这两个文件,它只会转到服务器(asax.cs)方面,为什么以及如何?我可以看到客户端(global.asax)页面吗?
答案 0 :(得分:8)
Global.asax是与“代码隐藏”文件.asax.cs一起使用的标记文件。但据我所知,标记文件使用不多(所有内容通常都会进入代码隐藏文件)。但是,您可以在解决方案资源管理器中右键单击它,然后“查看标记”来查看它。
您无法向标记添加内容,只能添加几个属性:
<%@ Application Codebehind="Global.asax.cs"
Inherits="WebApplication1.Global"
Language="C#" %>
MSDN docs似乎确认global.asax的唯一目的是添加/覆盖应用程序级事件的处理程序:
Global.asax文件,也称为ASP.NET应用程序文件,是一个可选文件,包含用于响应ASP.NET或HttpModules引发的应用程序级事件的代码。
答案 1 :(得分:4)
您可以在代码隐藏文件中点击F7以显示.asax
标记。
global.asax
的行为有点像aspx文件,在应用程序启动时进行编译。
您甚至可以将方法(例如Application_Start
)放入script runat="server"
global.asax.
元素中
我怀疑这是一个好习惯,但这应该允许热编辑一个正在运行的应用程序(我猜它应该触发一个回收)然后它将被动态编译。
答案 2 :(得分:2)
global.asax.cs就是所谓的global.asax代码隐藏文件。这两个文件之间没有真正的功能差异。代码隐藏只是为了区分标记和服务器端代码之间的关注。