2009-05-13 22 views

Respuesta

4

Por lo que sé, no hay formas directas de hacerlo. Puede ser que puedas crear un WebMethod para lograr esto. O algunos otros trucos.

Comprobar este hilo, hay algunas sugerencias: http://silverlight.net/forums/t/34744.aspx

+0

¡sí! Sabía acerca de la idea del método de webservice ... pero pensé que podría haber alguna otra solución ... –

+0

No hay trabajo directo en mi conocimiento. – NinethSense

+0

Pero, ¿cuál es su opinión acerca de por qué esto es una limitación en Silverlight? –

-1

Pruebe los métodos que se enumeran a continuación (primero uno debe hacer el truco), o vea here para obtener más información.

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

esto no es para html .. su parámetro de paso en caso de Asp.net .. esto no es posible de HTML a mi conocimiento –

+0

@ Chris he tratado todos los métodos, estoy usando servicios web ASP.Net (.asmx) con Silverlight. ya que no hay forma de encontrar la dirección IP del cliente en Silverlight, por lo tanto, tuve que registrar esto al final del servicio. todos los métodos anteriores funcionan bien en mi sistema local, pero cuando publico mi servicio en el servidor de producción. comienza a dar errores. –

+0

Error: Referencia de objeto no establecida en una instancia de un objeto. StackTrace: en System.Web.Hosting.ISAPIWorkerRequestInProc.GetAdditionalServerVar (índice Int32) en System.Web.Hosting.ISAPIWorkerRequestInProc.GetServerVariable (String name) en System.Web.Hosting.ISAPIWorkerRequest.GetRemoteAddress() en System.Web .HttpRequest.get_UserHostAddress() –