2010-04-16 11 views
9

Obtengo una CommunicationException mientras uso el servicio WCF. El mensaje es:CommunicationException con el mensaje 'secuencia no reconocida' en WCF

El punto extremo remoto ya no reconoce esta secuencia. Esto es más probable debido a un aborto en el punto final remoto. El valor de wsrm: Identificador no es un identificador de secuencia conocido. La sesión confiable fue fallada.

La excepción se produce en un momento después de que se haya llamado a un método de contrato. Antes de llamar al método contractual, el estado del canal se abre. Restauro mi cliente de servicio después de detectar esta excepción y por algún tiempo funciona bien. Pero luego este error vuelve a ocurrir. Parece que se ha excedido el tiempo de espera, pero no puedo entender cuál exactamente.

Uso wsHttpBinding con reliableSession habilitada. InactivityTimeout está configurado en media hora y estoy seguro de que no se excede, porque la excepción se lanza antes.

Respuesta

7

He resuelto el problema. El motivo fue RecieveTimeout en el lado del servidor. Se estableció en 1 minuto, por lo que después de no tener solicitudes durante el servidor de 1 minuto utilizado para cerrar un canal, y cuando el cliente intentó llamar a un contrato, el canal ya se bloqueó debido al tiempo de espera.

he encontrado la solución después de leer este artículo:

http://msdn.microsoft.com/en-us/library/system.servicemodel.reliablesession.inactivitytimeout.aspx

0

He visto esto suceder cuando se recicla un grupo de aplicaciones.

Consulte la última sección de este blog sobre el reciclaje del servicio.

2

he recibido este error, mientras que la creación de un nuevo servicio de WCF, que devuelve una lista de objetos.

Según tengo entendido, los servicios de WCF solo pueden pasar objetos muy simples hacia atrás.

Por lo tanto, los objetos que no sean de dominio público no serán transferibles.

El objeto tenía una propiedad de solo lectura con un poco de lógica.

Una vez que me deshice de esto, reconstruí y actualicé las referencias web, el error desapareció.

0

Sugerencia: Si devuelve un objeto y tiene propiedades, compruebe los objetos y conjuntos de cada uno. Tuvimos un problema al respecto.

Cuestiones relacionadas