Actualmente estoy trabajando en un servicio WCF con una gran cantidad de métodos definidos en la interfaz. La mayoría de estos métodos son simples operaciones CRUD con un poco de lógica utilizando el marco de entidad, y podrían dividirse en áreas funcionales con bastante facilidad. Solo hay un archivo que se acerca a 1K de líneas de código y me gustaría dividirlo para mantenerlo. Estoy considerando lo siguiente:¿Cuál es una buena manera de organizar una gran cantidad de métodos en un servicio .NET WCF?
- Divida el archivo de servicio en clases parciales. Pero aún sería una clase única con un código de gran cantidad. Sin embargo, creo que esto realmente no es un problema.
- Tiene una sola clase que implementa la interfaz de servicio con el manejo de errores estándar y la creación/destrucción de ObjectContext, pero enruta las llamadas a las clases de ayuda estática. He hecho esto antes, pero de alguna manera no me parece limpio.
Además, ¿sería mejor dividir por área funcional, o por métodos CRUD (agrupar todo, crear juntos, etc.).
Esto debe ser un problema muy común cuando se trata de servicios WCF. ¿Cuál es una buena manera de organizar los métodos de servicio WCF?
actualización
Al final, decidí pasar las llamadas de servicio a clases estáticas internas.
Depende de la naturaleza de los métodos: ¿son fácilmente agrupables por la función byt? ¿Hay similitudes entre ellos? Y cuál es el motivo para querer dividirlos: mantenibilidad, capacidad de actualización o qué. Las respuestas afectan las sugerencias. –
Se pueden agrupar fácilmente por área funcional. La razón para dividirlos es para mantenerlos. – Mas
La mayoría de las veces que empiezas a pensar en utilizar clases parciales porque tu clase es demasiado grande, sabes que es hora de refactorizar ... – codymanix