form Qual è il modo più semplice per convertire da asp classic a asp.net?




classic asp example (8)

Si consiglia di esaminare il nuovo framework ASP.NET MVC. Il livello di flessibilità è sorprendente e lo stile di codifica è leggermente più simile all'approccio ASP classico, sebbene con una separazione molto migliore tra chiesa e stato.

Sono uno sviluppatore .Net che è stato incaricato di aggiornare un sito web asp classico su asp.net. Il sito web attualmente funziona con fortuna e gomma da masticare, ma non c'è abbastanza tempo o denaro per fermare i progressi e fare una riscrittura completa. Ovviamente avrò ancora bisogno di essere in grado di fornire nuove funzionalità mentre sto aggiornando.

Quali strategie dovrei usare per apportare un graduale cambiamento graduale a asp.net? Devo convertire in una soluzione .net single-level e poi refactoring in una soluzione multi-tier appropriata o dovrei progettare i miei livelli di business e dati ora? Devo andare direttamente a 3.5 o è più semplice arrivare a 1.1 e passare a 2.0 o 3.5 dopo?

Una conversione completa richiederebbe probabilmente 3-5 mesi. C'è anche qualche codice 1.1 esistente, ed è per questo che sto pensando di usarlo come punto di partenza.


Answer #1

il modo più semplice per farlo è quello di saltare in testa prima. prendi alcuni libri su asp.net e tuffati nello studio visivo. Fai degli esempi, giocaci, costruisci qualcosa di divertente per te stesso. Imparerai facendo.


Answer #2

Dai un'occhiata ai forum di Snitz (www.snitz.com) - sono attualmente in ASP ma la porta su ASP.NET è quasi completa. Entrambe le basi di codice sono disponibili per te in modo che tu possa avere un'idea di come è stato fatto lì per aiutarti.


Answer #3

Essendo stato un programmatore asp classico da molto tempo, e ora uno sviluppatore ASP.NET, mi prenderei il tempo necessario per architettarlo correttamente nel framework 2.0 (3.5 se si desidera / ha bisogno delle funzionalità).

Il mio ultimo lavoro abbiamo avuto una grossa manciata di applicazioni classiche di asp che stavamo ricostruendo, e l'approccio "nuke and pave" è stato il più riuscito. Usa l'app classica esistente come tua specifica funzionale e wireframe e costruisci i tuoi compiti e le specifiche tecniche.


Answer #4

Non buttare via il tuo codice!

È l'unico peggior errore che puoi fare (su un grande numero di codice). Vedi cose che non dovresti mai fare, parte 1 .

Hai investito molto impegno in quel vecchio codice e hai risolto molti bug. Buttarlo via è un classico errore dello sviluppatore (e uno che ho fatto molte volte). Ti fa sentire "migliore", come una pulizia di primavera. Ma non è necessario acquistare un nuovo appartamento e tutti i nuovi mobili per arredare la tua casa. Puoi lavorare su una stanza alla volta ... e forse alcune cose hanno solo bisogno di un nuovo paintjob. Quindi, è qui che entra in gioco il refactoring.

Per nuove funzionalità nella tua app, scrivila in C # e chiamala dal tuo classico ASP . Sarai costretto a essere modulare quando riscrivi questo nuovo codice. Quando hai tempo, rifatta le parti del tuo vecchio codice in C # e risolvi i bug mentre vai. Alla fine, avrai sostituito la tua app con tutto il nuovo codice.

Potresti anche scrivere il tuo compilatore. Ne abbiamo scritto uno per la nostra classica applicazione ASP molto tempo fa per permetterci di generare PHP. Si chiama Wasabi e penso che sia la ragione per cui Jeff Atwood pensava che Joel Spolsky fosse uscito dal suo rocker. In realtà, forse dovremmo spedirlo e poi potresti usarlo.

Ci ha permesso di cambiare l'intero codice base in .NET per la prossima versione, riscrivendo solo una porzione molto piccola della nostra fonte. Ha anche causato un sacco di gente a chiamarci pazzi, ma scrivere un compilatore non è poi così complicato, e ci ha dato molta flessibilità.

Inoltre, se questa è una sola app interna, lasciala. Non riscriverlo: sei l'unico cliente e se hai bisogno di eseguirlo come classico asp, puoi soddisfare questo requisito.


Answer #5

Quanto durerebbe una conversione / riscrittura completa? Dipenderà anche da come hai strutturato il tuo progetto originale.

Posso rispondere che dovresti semplicemente indirizzare la v2.0 (3.5 se vuoi / hai bisogno delle sue funzioni) dall'inizio. Non è necessario sottoporsi a 1.1 del framework.


Answer #6

Sto anche lavorando su una migrazione graduale dal classico ASP a ASP.NET. La nostra prima fase consiste nel migrare alcune logiche comuni da una inclusione di ASP in un assembly .NET esposto a COM Interop in modo che possano essere richiamati sia da ASP classico che ASP.NET. Ho scritto alcuni test usando ASPUnit per verificare il comportamento dopo la migrazione all'assembly .NET (con l'ulteriore vantaggio di un refactoring più sicuro). Una volta che la logica di base è in .NET, possiamo iniziare a creare nuove pagine in ASP.NET e migrare singole pagine ASP in ASP.NET secondo i nostri ritmi.

Consiglierei .NET 2.0 o 3.5 su 1.1. ASP.NET MVC si presenta come un attraente percorso di aggiornamento.


Answer #7

Eviterei di andare in .NET 1.1 dal momento che Microsoft sta finendo il supporto per v 1.1 di .NET Framework su 10/14/2008. Il supporto esteso viene eseguito fino al 10/8/2013 ma è generalmente costoso da acquistare. Eventuali bug o buchi di sicurezza non saranno affrontati e sono il tuo problema.

http://support.microsoft.com/lifecycle/?LN=en-us&x=11&y=10&p1=1249

Paolo





asp-classic