Estoy capturando parte de la información sobre usuarios que visitan una sección particular de mi sitio web y me aparece un error extraño. Tengo una sección de código que hace lo siguiente.HttpRequestBase.UserHostAddress throwing error
string userIp = request.UserHostAddress;
La variable de solicitud es una HttpRequestBase. A veces, esto funciona bien y obtengo el IP; otras veces arroja un error que no estoy seguro de cómo protegerme. Esto es de mi registro de errores.
"Valor no está dentro del rango esperado. En System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal (Int32 errorCode, IntPtr errorInfo) en System.Web.Hosting.IIS7WorkerRequest.GetServerVariableInternal (String name)"
Parece que la primera vez que voy a una página funciona bien, el error se produce si realizo una actualización, o voy rápidamente a otra página que captura la misma variable.
Vea si esto lo ayuda: http://stackoverflow.com/questions/650357/httprequest-servervariables-throws-argumentexception-in-wcf-with-iis7 –
Lo leí antes de publicar. Eso no aplica aquí. No estoy estableciendo el contrato para OneWay. – Mitch
puede probar 'System.Web.HttpContext.Current.Request.UserHostAddress' - en caso de que HttpRequestBase no siga los mismos pasos que HttpRequest –