ASP.NET Session_End事件和获取用户IP地址

时间:2012-07-08 08:32:46

标签: asp.net session

在我的ASP.NET Web应用程序中,我在Global.asax中有我的Session_End事件。我想要的是能够获得用户的IP地址。我试过的是

void Session_End(object sender, EventArgs e)
{
    string ip1 = HttpContext.Current.Request.UserHostAddress;
    string ip2 = Request.UserHostAddress;
}

但两种情况下Request都为空。如何获取用户的IP地址?

1 个答案:

答案 0 :(得分:4)

可以使用以下方法检索用户的IP地址:

HttpContext.Current.Request.UserHostAddress

但是如您所见,IP地址是从“Current.Request”中检索的,而Session_End事件则不是这样,因为它不是请求。如果你特别需要Session_End的IP地址,你可以尝试在Session_Start中将IP地址保存到会话变量中,然后在Session_End上调用它。