Wie kann ich die IP-Adresse des Clients in ASP.NET MVC abrufen?
Ich bin völlig neu im ASP.NET MVC-Stapel und habe mich gefragt, was mit dem einfachen Page-Objekt und dem Request ServerVariables-Objekt passiert ist.
rundsätzlich möchte ich die IP-Adresse des Client-PCs abrufen, verstehe jedoch nicht, wie sich die aktuelle MVC-Struktur all dies geändert ha
Soweit ich verstehen kann, Die meisten variablen Objekte wurden durch die HttpRequest-Varianten ersetzt.
Möchten Sie Ressourcen teilen? In der ASP.NET MVC-Welt gibt es wirklich einiges zu lernen. :)
Zum Beispiel habe ich eine statische Klasse mit dieser aktuellen Funktion. Wie erhalte ich mit ASP.NET MVC das gleiche Ergebnis?
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;
}
Und wie rufe ich diese Funktion von der Controllerseite aus auf?