Ciao,
sì è possibile dedurre il Paese dell'utente dal suo indirizzo IP.
L'IP, che puoi recuperare con
Request.UserHostAddress, di per sé non ti dice nulla ma lo puoi cercare all'interno del database GeoLite Country di MaxMind, pubblicato a questo indirizzo:
http://www.maxmind.com/app/geoip_countryConsiste in un
file csv da scaricare ed importare nel DBMS che preferisci. Il file viene aggiornato ogni mese anche se, dato che tutti gli ultimi blocchi IPv4 sono stati
già allocati, dovrebbero esserci variazioni minime. Ne esiste anche una versione IPv6.
Dopo che hai importato il file csv in un database, nella tua applicazione recupera l'IP dell'utente con Request.UserHostAddress. Trasformalo in un numero intero usando
questo script di Riccardo Golia e infine cercalo nel database usando una query simile a questa:
string query = "SELECT ColonnaNazione FROM tabella WHERE " + valoreNumericoIP + " BETWEEN EstremoInferiore AND EstremoSuperiore";
Guardano il file csv, la colonna della nazione è la sesta, mentre le colonne EstremoInferiore ed EstremoSuperiore sono rispettivamente la terza e la quarta.
ciao,
Modificato da BrightSoul il 21 novembre 2011 21.10 -