5

Ho un sito Web in asp.net 4.0 con 10 pagine e 12 controlli utente.Posso usare i controlli utente di AspFe WebForm nel sito MVC?

Ora voglio migrare questo sito in asp.net MVC 4.0; Così posso riutilizzare quei controlli utente (che ci sono in asp.net tradizionale) e renderli usando <%= Html.RenderUserControl() %>.

In breve la mia domanda è se possiamo usare il controllo utente di asp.net in asp.mvc 4?

Molte grazie,

Jigar

+0

Dipende. Se non dipendono da ViewState, potrebbe funzionare. Tutto si riduce a ciò che è nel controllo. –

+0

Craig stuntz: - Puoi portarmi ad alcuni link profondi? risposte migliori? –

+1

vedere questo: http: //stackoverflow.com/questions/6317317/mvc-3-add-usercontrol-to-razor-view – Jigs

risposta

4

In genere non è possibile utilizzare i controlli ASP.NET in un'applicazione MVC. Quasi tutti i controlli richiedono lo stato di visualizzazione, che ASP.NET MVC non supporta.

+0

Potresti essere in grado di utilizzare alcuni trucchetti per farli funzionare a metà, ma i controlli di moduli Web richiedono cose come lo stato di visualizzazione e il ciclo di vita della pagina (init, load, ... prerender) e mvc è completamente diverso. Abbiamo riscontrato lo stesso problema in cui avevamo un controllo utente che ci piacerebbe riutilizzare in mvc e la risposta breve era essenzialmente la necessità di ricostruirlo utilizzando viste e modelli di rasoio. Forse qualcuno potrebbe creare un componente Web Form in qualche modo incluso in una pagina di mvc, ma non credo che al momento ci sia una cosa del genere. –

0

Bella domanda Jigar Pandya;

; possiamo usare Controlli utente WebForm ASP.NET nel sito MVC.

Un modo in cui saremmo in grado di utilizzare i controlli utente in ASP.NET MVC è di aggiungere un nuovo elemento di tipo webform.

Poi su quella pagina web del ci sarebbe in grado di utilizzare ASP.NET controllo utente di in un progetto MVC. Ho avuto la stessa domanda poiché avevamo molti controlli utente che volevamo utilizzare. Spero possa aiutare.

+0

Non riesco a vedere un modo per aggiungere un "nuovo elemento di tipo webform". Penso che tu debba spiegare quella parte. La risposta alla domanda sembra essere che questo non è possibile. –

+0

In solution explorer fare clic con il tasto destro del mouse su "aggiungi nuovo elemento", quindi sotto i modelli installati scegliere "modulo web" https://msdn.microsoft.com/en-us/library/0hds5k93.aspx Speranza che ti aiuti Action Dan – Catto

+0

Ciao a quella pagina di riferimento è intitolato "Procedura: aggiungere la pagina Web Form ASP.NET a un progetto Web". La domanda riguarda l'aggiunta di un modulo web * controllo utente * a un progetto mvc. Qualcosa che apparentemente non è possibile nel modo in cui alcuni potrebbero sperare. –