一个关于Global.asax文件的问题
我现在做一个统计,页面访问量的程序。相应的代码已经写完了
可是上面要求,为了不在每个页面中都添加代码,要把这个计数的方法,写到Global.asax文件里,
我想问一下,在Global.asax里,我如何得到相应的页面链接。就是说,我点击一个叫aa.aspx?cid=2这个页面。我在Global.asax页面中如何得到它的链接或是它的一些属性
------解决方案--------------------
只要request.rawurl得到链接,request.queryingstring集合得到属性
------解决方案--------------------
相关例子:
http://www.codeproject.com/aspnet/FastCustomHitCounter.asp
------解决方案--------------------
<%@ Application Language="C#" %>
<script runat="server">
void Application_BeginRequest(Object sender, EventArgs e)
{
Request.Queryingstring .......
}
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
}
void Application_End(object sender, EventArgs e)
{
// 在应用程序关闭时运行的代码
}
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
}
void Session_Start(object sender, EventArgs e)
{
// 在新会话启动时运行的代码
}
void Session_End(object sender, EventArgs e)
{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
}
</script>
------解决方案--------------------綁定一下
------解决方案--------------------
在 Global.asax 如下事件处理
void Application_BeginRequest(Object sender, EventArgs e)
{
string path = HttpContext.Current.Request.RawUrl;
string val = HttpContext.Current.Request.QueryString["key"];
// ....
}
------解决方案--------------------
------解决方案--------------------没做过,关注,以前做的都是在每页中写代码
------解决方案--------------------
------解决方案--------------------
C# code
void Session_Start(object sender, EventArgs e)
{
string path = HttpContext.Current.Request.RawUrl;
string val = HttpContext.Current.Request.QueryString["cid"];
}
------解决方案--------------------
也可以在httpmodule里处理的.
------解决方案--------------------
------解决方案--------------------
关注!
------解决方案--------------------
------解决方案--------------------
HttpContext.Current.Request.RawUrl;
------解决方案--------------------
6和12楼 回答了1!
------解决方案--------------------
Request.ServerVariables[""];对象
------解决方案--------------------
up