visual tutorial studio net create crear wcf web-services

tutorial - Cierre y eliminación de un servicio WCF



web service c# visual studio 2017 (2)

Parece ser un patrón de diseño común en el código .NET. Aquí hay una cita de las pautas de diseño del Marco

Considere proporcionar el método Close (), además de Dispose (), si close es terminología estándar en el área. Al hacerlo, es importante que haga que la implementación de Close sea idéntica a Dispose ...

Aquí hay una publicación de blog en la que puede encontrar una solución para este problema de diseño System.ServiceModel.ClientBase

El método Close en un ICommunicationObject puede arrojar dos tipos de excepciones como esquemas de MSDN aquí . Entiendo por qué el método Close puede arrojar esas excepciones, pero lo que no entiendo es por qué el método Dispose en un proxy de servicio llama al método Close sin intentarlo. ¿No es su método de eliminación el único lugar donde desea asegurarse de no arrojar ninguna excepción?


Sí, normalmente Dispose es uno de los lugares en los que desea asegurarse de que no se lanzan las excepciones. Sin embargo, en función de este hilo del foro de MSDN, hubo algunas razones históricas para este comportamiento. Como tal, el patrón recomendado es el paradigma try {Close} / catch {Abort}.