2

在我的 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 地址?

4

1 回答 1

4

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

HttpContext.Current.Request.UserHostAddress

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

于 2012-07-08T09:02:43.060 回答