Il problema è. che con le informazioni fornite, la gamma di risposte possibili è teoricamente infinita.
Se raccolgo i fatti concreti ottengo la seguente immagine:
- ASP.NET 1.0 Webform
- DataGrid
- Accoppiamento stretto
- Accesso dati tramite DAL personalizzato
Inoltre, non hai detto in quale direzione si sta dirigendo il tuo refactoring.
Semplicemente »pulire il casino« è un buon punto di partenza, ma non abbastanza. E come @Wayne ha scovato: sarebbe finito in una riscrittura.
Ci sono almeno 2 possibilità:
1) Creare una SPA dove hai un frontend intelligente e fai di più - o almeno un buon affare - di logica nel frontend
2) Creazione di un'applicazione web convenzionale con WebAPI .
Inoltre, anche se in realtà non ho lavorato con esso, ma forse vale la pena dare un'occhiata: NancyFX
A seconda di quanto è grande l'applicazione / codice base - e su quanto vuoi essere, dovresti pensare a usare microservizi
Alcuni consigli facili sono:
Data access is through a custom DAL, meaning that most of that code also requires a live database with proper data inside it.
- Questo potrebbe essere deriso o cancellato
Per il resto, dipende:
Se il codebase è in qualche modo in forma. Cerca di indovinare, cosa fa il codice. Scrivi un test. Vedi se la tua ipotesi è valida. Se è così, scrivi un altro test, per verificare un'altra ipotesi. Se il fattore PITA è troppo alto, riscrivi completamente la logica aziendale. Altrimenti ripeti e costruisci una comprensione raffinata iterativa del codice ed evolvi una suite di test finita. Passo dopo passo stendi una rete di sicurezza attorno al codice. Se è abbastanza stretto, prendi la motosega e taglia il codice in pezzi a portata di mano.
Devo ammettere che questo è un consiglio molto generale, ma senza ulteriore conoscenza della base di codice, è difficile dare qualche consiglio concreto.