2009-05-13 19 views

risposta

4

Per quanto ne so non ci sono modi diretti per farlo. Potrebbe essere possibile creare un WebMethod per raggiungere questo obiettivo. O qualche altro trucco.

Controllare questa discussione, ci sono alcuni suggerimenti: http://silverlight.net/forums/t/34744.aspx

+0

sì! conoscevo l'idea del metodo webservice .... ma ho pensato che ci fosse qualche altra soluzione ... –

+0

Nessun lavoro diretto in giro a mia conoscenza. – NinethSense

+0

Ma qual è il motivo per cui questa è una limitazione in silverlight? –

-1

Provare i metodi elencati di seguito (il primo dovrebbe solitamente eseguire il trucco) oppure vedere here per ulteriori informazioni.

Request.ServerVariables(”REMOTE_HOST”) 
HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] 
HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; 
Request.UserHostAddress() 
Request.UserHostName() 
string strHostName = System.Net.Dns.GetHostName(); 
string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString(); 
+0

questo non è per html .. il suo parametro di passaggio in caso di Asp.net .. questo non è possibile da HTML a mia conoscenza –

+0

@ Chris ho provato tutti i metodi, sto usando i servizi web ASP.Net (.asmx) con Silverlight. poiché non c'è modo di trovare l'indirizzo IP del client in Silverlight, quindi ho dovuto registrarlo al termine del servizio. tutti i metodi sopra funzionano perfettamente sul mio sistema locale, ma quando pubblico il mio servizio sul server di produzione. inizia a dare errori. –

+0

Errore: il riferimento all'oggetto non è impostato su un'istanza di un oggetto. StackTrace: a System.Web.Hosting.ISAPIWorkerRequestInProc.GetAdditionalServerVar (indice Int32) a System.Web.Hosting.ISAPIWorkerRequestInProc.GetServerVariable (String name) a System.Web.Hosting.ISAPIWorkerRequest.GetRemoteAddress() a System.Web .HttpRequest.get_UserHostAddress() –