Versiones, nombres y URL de punto final de WCF

8

Tengo un servicio WCF y un Main Lib1.

Diga, tengo un servicio de Guardar perfil. WCF obtiene datos (con un contrato de datos predefinidos) del cliente y los pasa a la clase principal Lib1, genera respuesta y la envía de vuelta al cliente.

Método WCF: SaveProfile (perfil ProfileDTO)

Versión actual 1.0 ProfileDTO tiene lo siguiente Nombre de usuario Contraseña Nombre de pila DOB (en cadena aaaa-mm-dd) CreatedDate (en la secuencia aaaa-mm-dd)

Siguiente versión (V2.0) ProfileDTO tiene los siguientes Nombre de usuario Contraseña Nombre de pila DOB (En UnixTimeStamp) CreatedDate (En UnixTimeStamp)

Versión 3.0 ProfileDTO tiene lo siguiente (con cambio en la validación de longitud de nombre de usuario y contraseña) Nombre de usuario Contraseña Nombre de pila DOB (En UnixTimeStamp) CreatedDate (En UnixTimeStamp)

En simple tenemos DataContract y cambio de flujo de trabajo entre cada versión 1. ¿Cómo nombro los métodos en WCF Service y Main Class Lib1? 2. ¿Tengo que seguir algún patrón específico para facilitar el desarrollo y el mantenimiento? 3. ¿Tengo que tener diferentes puntos finales para diferentes versiones?

En el ejemplo anterior, tengo un método llamado "Guardar perfil". ¿Debo nombrar los métodos como "SaveProfile1.0", "SaveProfile2.0", etc. Si ese es el caso cuando no hay cambios entre la versión "3.0" y "4.0", entonces habrá dificultades en el mantenimiento. Estoy buscando un enfoque que ayude a facilitar el mantenimiento

    
pregunta Vinothkumar VJ 24.11.2013 - 19:20

1 respuesta

1

Hay dos formas de tener diferentes versiones del mismo contacto. La primera es usar espacios de nombres y la segunda es usar diferentes nombres de servicio . Personalmente, prefiero el enfoque de espacio de nombres diferente simplemente porque encapsula la "versión" con un título de espacio de nombres y permite que las personas que llaman sean específicas acerca de sus requisitos de contrato.

Sin embargo, crear nuevas versiones de contrato tiene el riesgo de romper la compatibilidad hacia atrás con las personas que llaman existentes.

    
respondido por el Chris Mylonas 25.11.2013 - 16:12

Lea otras preguntas en las etiquetas