Actualmente nos estamos embarcando en la sustitución de la pila ADO.NET en nuestra aplicación C# con Linq.Estrategias para el reemplazo de objetos sistémicos
Debido a que la aplicación no se diseñó con una capa de abstracción de datos, hay llamadas ADO en casi cada capa de la aplicación a tal grado que compartimentar cualquier objeto e intentar convertirlo a Linq significa que se ejecuta un laberinto de agujeros de conejo.
Lo que estoy preguntando son estrategias o enfoques para abordar tales cambios sistémicos al por mayor mientras se aseguran las pruebas adecuadas y un período mínimo de desactivación de las herramientas de caída (cambios en la plataforma en cualquier momento y vuelvo a ella más adelante fecha).
Hemos jugado con la siguiente:
- crear un objeto de espejo de cada objeto con el nuevo código = tienen que mantener 2 bases de código hasta la conversión completa
- delante de todos los nombres de las funciones de las funciones de ADO con ADO_ y crear versiones de Linq con el nombre original
- Tener un FLAG de todo el sistema para indicar si se debe usar ADO o Linq y ajustar cada llamada ADO con if (FLAG) {ADO} else {Linq} = tener que volver después de la conversión y eliminar todo ADO refs
Cada sugerencia hasta el momento es vergonzosa.
¿Qué chicos/chicas sugieren?
NOTA: Eliminé '(ADO a enlace)' del título porque estoy buscando respuestas y prácticas más genéricas y no solo limitado a la conversión de ADO a Linq utilizada como ejemplo aquí.