Pregunta

Quiero empezar a migrar una aplicación Web Forms a MVC. El proceso será gradual, por lo que ambos sistemas deben coexistir.

La pregunta es: ¿Debería haber dos MasterPages, uno para las páginas WebForms y otra para las vistas de MVC? ¿Hay una manera de tener una sola?

¿Fue útil?

Solución

En ASP.NET MVC la página maestra debe derivar de System.Web.Mvc.ViewMasterPage mientras que en WebForms clásicos de System.Web.UI.MasterPage . Si en MVC utiliza este último no tendrá acceso a ningún ayudantes. Aunque se puede utilizar en formularios web ViewMasterPage clásicos porque deriva de MasterPage (una vez más, que no tendrá acceso a los ayudantes en la aplicación de formularios web, pero que importa).

Así que para responder a su pregunta, sí, usted podría tener una página principal común suponiendo que se deriva de ViewMasterPage.

Dicho esto probablemente no será capaz de hacer este trabajo como en una página maestra MVC se usaría ayudantes HTML para hacer vistas parciales como Html.RenderPartial el que no tiene mucho sentido en una aplicación Web Forms clásico y viceversa una aplicación Web Forms clásica que probablemente estaría utilizando algunos controles del lado del servidor como <asp:xxx runat="server" /> o tiene una sola etiqueta form (de nuevo con runat="server") contaminado con ViewState, etc ... que apenas tiene sentido en MVC. Así que mi recomendación sería no hacerlo así.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top