1 de octubre de 2012

Pasando de ASP.NET WebForm a ASP.NET MVC

Si eres un desarrollador acostumbrado a ASP.NET WebForm y estas comenzando con el patrón MVC (ASP.NET MVC) deberías leer este articulo.

MVC en Imagen

image

Equivalencias entre WebForm y MVC

WebForm

MVC

MasterPage

_Layout.cshtml (Se encuentra en Views\Shared)

 

@{

       Layout = "~/Views/Shared/_Layout.cshtml";

       ViewBag.Title = "Dashboard";

}

User Controls
.ascx

Vistas Parciales (forzando la ejecución del controlador)

Existen diferencias importantes:

  • Cuando incluimos vistas compartidas en otra vista, esta son interpretadas por razor sin ejecutarse ningún controlador. Simplemente se renderiza su contenido – no como en los controles ascx donde se ejecuta todo el ciclo de vida del control completo y sus correspondientes eventos

@Html.Partial(“_PartialFooter”);

@Html.Partial(MVC.Shared.Views._PartialFooter);

  • Es posible utilizar una vistas compartida de un modo muy similar al de un control ascx de ASP.NET WebForms, aunque para este debemos forzar la ejecución del controlador a través de los métodos Action y RenderAction del Helper Html:

[ChildActionOnly]

public virtual ActionResult MenuBar(string selectedId)

{

       MenuModel menu = new MenuModel(selectedId);

       return PartialView(menu);

}

@Html.Action("MenuBar")

@Html.Action(MVC.Home.MenuBar())

             *Ejecuta el método "MenuBar" del controlador correspondiente

 


 


Aspectos que no existen en MVC


En ASP.NET MVC desaparecen algunos conceptos que eran muy utilizados en WebForm y que nos obligaran a cambiar el chip:



  • No hay ViewState

  • No hay Eventos

  • No hay PostBack

 


Paquetes utilizados:



 


Nota: Hasta aquí algunos aspectos a tener en cuenta. A medida que encuentre algunas otras diferencias, iré actualizando esta entrada.

No hay comentarios:

Publicar un comentario