Как я могу получить IP-адрес клиента в ASP.NET MVC?C#

Место общения программистов C#
Anonymous
Как я могу получить IP-адрес клиента в ASP.NET MVC?

Сообщение Anonymous »

Я новичок в стеке ASP.NET MVC, и мне интересно, что случилось с простым объектом Page и объектом Request ServerVariables?

По сути, Я хочу получить IP-адрес клиентского ПК, но не понимаю, как текущая структура MVC все это изменила.

Насколько я понимаю, большая часть объектов переменных заменена вариантами HttpRequest.

Кто-нибудь хочет поделиться ресурсами? В мире 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://stackoverflow.com/questions/257 ... sp-net-mvc

Вернуться в «C#»