Pregunta

Tengo DotNetOpenAuth que se ejecuta en un subproceso de fondo haciendo llamadas a Google autorizada con OAuth sobre una base regular.

Una vez al día, que es aproximadamente uno de cada 10.000 llamadas, me sale el siguiente excepción:

Una excepción no controlada y el proceso se terminó. ID de aplicación: DefaultDomain Proceso ID: 3316 Excepción: System.NotImplementedException Mensaje: no se implementa el método o el funcionamiento. StackTrace: en DotNetOpenAuth.Messaging.ProtocolException.GetObjectData (SerializationInfo información, el contexto StreamingContext) en c: \ Users \ andarno \ git \ dotnetopenid \ src \ DotNetOpenAuth \ Mensajería \ ProtocolException.cs: la línea 90 en System.Runtime.Serialization.Formatters. Binary.WriteObjectInfo.InitSerialize (Object obj, ISurrogateSelector surrogateSelector, el contexto StreamingContext, serObjectInfoInit serObjectInfoInit, IFormatterConverter convertidor, objectWriter objectWriter, SerializationBinder aglutinante) en System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.Serialize (Object obj, ISurrogateSelector surrogateSelector, el contexto StreamingContext , serObjectInfoInit serObjectInfoInit, IFormatterConverter convertidor, objectWriter objectWriter, SerializationBinder aglutinante) en System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize (gráfico de objetos, Header [] inHeaders, __BinaryWriter serWriter, Boolean fcheck) en System.Runtime.Serialization.Formatters .Binary.BinaryFormatter.Serialize (Stre am serializationStream, gráfico de objetos, cabecera cabeceras [], Boolean fcheck) en System.Runtime.Remoting.Channels.CrossAppDomainSerializer.SerializeObject (Object obj, MemoryStream stm) en System.AppDomain.Serialize (Object o) en System.AppDomain.MarshalObject ( Object o)

Si se arrojó y atrapó una vez al día estaría bien, pero esto es un grande - Me estoy poniendo esto en el registro de errores en el servidor, y se está rompiendo el proceso completo - el sitio se cae y se reinicia.

¿Alguien más ha funcionado en esto? Algo que yo estoy haciendo claramente erróneo?

¿Fue útil?

Solución

Parece que el servidor está intentando serializar un DotNetOpenAuth.Messaging.ProtocolException, lo que no (en la actualidad) serialización apoyo. Sin embargo, esto sugiere que hay un problema antes de esto que no se informó debido a que en la notificación del problema llegamos a otro. Si tiene registros previos a este error puede ser que le ayudará a descubrir lo que este problema es líder.

Apoyo a la serialización de la ProtocolException para evitar este segundo problema es algo que debe solicitar en http://dotnetopenauth.uservoice.com / . Esas peticiones son considerados seriamente por lo que te recomendamos que presentes si quiere que esto esté arreglado.

En cuanto a por qué se va a traer abajo todo el proceso - mi conjetura es que el anterior, que es un problema al informar de un problema, y ??tal vez el anfitrión (ASP.NET presumiblemente) no está preparado para hacer frente a ese <. / p>

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top