Attualmente stiamo intraprendendo la sostituzione dello stack ADO.NET nella nostra applicazione C# con Linq.Strategie per la sostituzione di oggetti sistemici
Poiché l'applicazione non è stata progettata con un livello di astrazione dati, ci sono chiamate ADO in quasi tutti i livelli dell'applicazione a un grado tale che compartimentare un oggetto e provare a convertirlo in Linq significa che si esegue un labirinto di buchi di coniglio.
Quello che sto chiedendo, sono le strategie o gli approcci per affrontare tali cambiamenti sistemici all'ingrosso, garantendo al tempo stesso test adeguati e un periodo minimo di abbattimento degli strumenti di rilascio (la shelf-making cambia in un attimo e torna in un secondo momento Data).
Abbiamo giocato con il seguente:
- Creare un oggetto specchio di ogni oggetto con il nuovo codice = hanno a mantenere 2 basi di codice fino a conversione completa
- prefisso di tutte le funzioni di funzioni ADO con ADO_ e creare versioni Linq con nome originale
- Avere un FLAG di sistema per indicare se utilizzare ADO o Linq e avvolgere ogni chiamata ADO con if (FLAG) {ADO} else {Linq} = deve tornare dopo la conversione e rimuovere tutto Rif. ADO
Ogni suggerimento fino ad ora è meritevole.
Che cosa suggerite voi ragazzi/ragazze?
NOTA: Ho rimosso "(ADO to Link)" dal titolo perché sto cercando risposte e pratiche più generiche e non solo limitato alla conversione da ADO a Linq utilizzata come esempio qui.