我完全不熟悉ASP.NET MVC堆栈,我想知道简单的Page对象和Request ServerVariables对象发生了什么?如何在ASP.NET MVC中获取客户端的IP地址?
基本上,我想拉出客户端PC的IP地址,但我不明白当前的MVC结构如何改变这一切。
据我所知,most of the variable objects has been replaced by the HttpRequest variants。
有人关心分享一些资源? ASP.NET MVC世界中真的有很多东西需要学习。 :)
例如,我有这个当前函数的静态类。如何使用ASP.NET MVC获得相同的结果?
public static int getCountry(Page page)
{
return getCountryFromIP(getIPAddress(page));
}
public static string getIPAddress(Page page)
{
string szRemoteAddr = page.Request.ServerVariables["REMOTE_ADDR"];
string szXForwardedFor = page.Request.ServerVariables["X_FORWARDED_FOR"];
string szIP = "";
if (szXForwardedFor == null)
{
szIP = szRemoteAddr;
}
else
{
szIP = szXForwardedFor;
if (szIP.IndexOf(",") > 0)
{
string [] arIPs = szIP.Split(',');
foreach (string item in arIPs)
{
if (!isPrivateIP(item))
{
return item;
}
}
}
}
return szIP;
}
如何从控制器页面调用此函数?
https://www.nuget.org/packages/XFF – efaruk 2015-05-10 07:31:23