Mix di moduli Web e ASP.NET MVC

4

Sto lavorando su un progetto Web Forms ASP.NET molto grande. Il nostro team desidera riscrivere questo progetto con ASP.NET MVC e progettazione basata su domini. È una buona idea combinare Web Form con MVC?

Con questa idea possiamo sviluppare ogni pagina e usare la pagina appena sviluppata nel progetto attuale. Le vecchie pagine funzionano con Web Form e le nuove pagine funzionano con MVC e il design guidato dal dominio fino a quando tutte le pagine sono state riscritte.

    
posta Mahdi_Nine 21.05.2017 - 10:00
fonte

2 risposte

2

Mentre è possibile utilizzare i due nello stesso progetto, sconsiglierei di farlo a scopo di riscrittura.

Invece, costruirò una facciata che gestisca tutto il traffico in entrata e la inoltra alla vecchia implementazione oa seconda dello stato della riscrittura, a quella nuova.

Questo ti dà molti vantaggi, ti consente di lavorare da un nuovo progetto, il che significa che sarai in grado di strutturare il modo in cui ritieni che sia il migliore. Allo stesso tempo puoi copiare qualsiasi codice che desideri conservare. Inoltre, se si riscontrano difetti con la nuova implementazione, è possibile tornare facilmente al vecchio sistema. Se vuoi fare un ulteriore passo avanti, potresti persino chiamare entrambi i sistemi allo stesso modo tempo. Il richiedente verrà servito con l'implementazione comprovata, ma internamente si mantengono entrambi e si confrontano i risultati. Una volta che sei sufficientemente soddisfatto della risposta del nuovo sistema, fai lo switch per questi tipi di richieste.

    
risposta data 21.05.2017 - 11:29
fonte
1

L'ho già fatto per un prodotto che stavamo cercando di migrare da Web Form a MVC e ho scoperto che funzionava molto bene. Alcune note della mia esperienza:

Ho utilizzato la tecnica in questo post del blog per utilizzare la nostra pagina master esistente nelle visualizzazioni Rasoio. Volevo evitare di dover mantenere due layout, tuttavia con il senno di poi si è trattato di un errore e mantenere due layout non sarebbe stata una soluzione migliore. Il problema era che i concetti di Web Form continuavano a "filtrare" nelle nostre pagine MVC, ad esempio la nostra pagina principale usava un gestore di script, che causava complicazioni quando si cercava di fare qualcosa con il "modo MVC".

Abbiamo utilizzato una libreria dell'interfaccia utente specifica di Web-Form, il che significava che alcuni elementi dell'interfaccia utente avevano un aspetto leggermente incoerente.

Mi sembra di ricordare che abbiamo avuto qualche tipo di problema con i cookie in cui le API di Owin e Web Form non interagivano come previsto. Mi dispiace, non riesco a ricordare i dettagli, solo che ci ha lasciato per un giorno o due.

Vale la pena notare che non siamo mai riusciti a sbarazzarci di Web Form - non abbiamo avuto il tempo per una completa riscrittura. Non sono sicuro che questo sia l'approccio migliore, ma non è una decisione che rimpiango.

    
risposta data 21.05.2017 - 13:01
fonte