Está en la página 1de 4

Marco de MVC y estructura de aplicacin

.NET Framework 4 Personas que lo han encontrado til: 1 de 1 - Valorar este tema En un sitio web de ASP.NET, las direcciones URL se asignan normalmente a archivos que estn almacenados en disco (normalmente archivos .aspx). Estos archivos .aspx incluyen marcado y cdigo que se procesan para responder a la solicitud. El marco de MVC de ASP.NET asigna las direcciones URL al cdigo del servidor de manera diferente que una pgina de formularios Web Forms de ASP.NET. En lugar de asignar las direcciones URL a pginas o controladores de ASP.NET, el marco asigna las direcciones URL a las clases de controlador. Las clases de controlador controlan las solicitudes entrantes, como los datos e interacciones del usuario, y ejecuta la aplicacin y la lgica de datos correspondientes en funcin de los datos proporcionados por el usuario. Normalmente, una clase de controlador llama a un componente de vista independiente que genera una salida HTML como respuesta. El marco de MVC de ASP.NET separa los componentes del modelo, vista y controlador. El modelo representa la lgica de negocio o dominio de la aplicacin, normalmente con los datos proporcionados por una base de datos. El controlador selecciona la vista, que representa la interfaz de usuario adecuada. De forma predeterminada, el marco de MVC de ASP.NET usa los tipos existentes de pgina de ASP.NET (.aspx), pgina maestra (.master) y control de usuario (.ascx) para la representacin en el explorador. El controlador busca el mtodo de accin adecuado en el controlador, obtiene los valores que se usarn como argumentos del mtodo de accin y administra los errores que se pudieran producir cuando se ejecuta el mtodo de accin. A continuacin, representa la vista solicitada. De forma predeterminada, cada conjunto de componentes est en una carpeta independiente de un proyecto de aplicacin web de MVC.

Enrutamiento de direcciones URL


El marco de MVC de ASP.NET usa el motor de enrutamiento de ASP.NET, que proporciona la flexibilidad de asignar direcciones URL a las clases de controlador. Puede definir las reglas de enrutamiento que el marco de MVC de ASP.NET usar para evaluar direcciones URL entrantes y seleccionar el controlador adecuado. Tambin puede hacer que el motor del enrutamiento analice automticamente las variables definidas en la direccin URL, y hacer que el marco de MVC de ASP.NET pase los valores al controlador como argumentos de parmetro. Para obtener ms informacin, vea Enrutamiento de ASP.NET.

Marco de MVC y postbacks


El marco de MVC de ASP.NET no usa el modelo de postback de los formularios Web Forms de ASP.NET para las interacciones con el servidor. En su lugar, todas las interacciones del usuario final se enrutan a una clase de controlador. De este modo se mantiene la separacin entre la lgica de la interfaz de usuario y la lgica empresarial, y aumenta la facilidad de pruebas. Por consiguiente, el

estado de vista de ASP.NET y los eventos de ciclo de vida de las pginas de formularios Web Forms de ASP.NET no se integran con las vistas basadas en MVC.

Plantilla de proyecto de MVC


El marco de MVC de ASP.NET incluye una plantilla de proyecto de Visual Studio que ayuda a crear aplicaciones web estructuradas para admitir el modelo de MVC. Esta plantilla crea una nueva aplicacin web de MVC que se configura para tener las carpetas, plantillas de elementos y entradas de archivo de configuracin necesarias.

Nota

Las plantillas de proyecto de MVC de aplicacin web ASP.NET estn basadas en la plantilla de proyecto de proyecto de MVC de ASP.NET nuevo, seleccione Nuevo proyecto en el men Archivo en lugar de seleccio
Al crear una nueva aplicacin web de MVC, Visual Studio ofrece la opcin de crear dos proyectos al mismo tiempo. El primer proyecto es un proyecto web donde se implementa su aplicacin. El segundo proyecto es un proyecto de prueba unitaria donde puede escribir las pruebas unitarias para los componentes de MVC del primer proyecto.

Nota

Microsoft Visual Studio Standard Edition y Microsoft Visual Web Developer Express no permiten crear los p ofrecen la opcin de crear un proyecto de prueba al crear una aplicacin de MVC.
Puede usar cualquier marco de pruebas unitarias que sea compatible con .NET Framework para probar las aplicaciones ASP.NET de MVC. Visual Studio Professional Edition incluye compatibilidad de pruebas de proyectos para MSTest. Para obtener ms informacin sobre MSTest, vea Opciones de la lnea de comandos para MSTest.exe.

Estructura de proyectos de MVC de aplicacin web


Cuando se crea un proyecto de MVC de aplicacin web ASP.NET, los componentes de MVC se separan en funcin de las carpetas de proyecto que se muestran en la ilustracin siguiente:

De forma predeterminada, los proyectos de MVC incluyen las carpetas siguientes: App_Data, que es el almacn fsico de los datos. Esta carpeta tiene el mismo rol que en los sitios web ASP.NET que usan pginas de formularios Web Forms. Content, que es la ubicacin recomendada para agregar los archivos de contenido, como los archivos de hoja de estilos en cascada, imgenes, etc. En general, la carpeta Content es para archivos estticos. Controllers, que es la ubicacin recomendada para los controladores. El marco de MVC requiere que los nombres de todos los controladores terminen con "Controller", como HomeController, LoginController o ProductController. Models, disponible para las clases que representan el modelo de aplicaciones de su aplicacin web de MVC. Normalmente, esta carpeta incluye cdigo que define los objetos y la lgica para la interaccin con el almacn de datos. Normalmente, los objetos del modelo real estarn en bibliotecas de clases independientes. Sin embargo, al crear una nueva aplicacin, podra colocar las clases aqu y, a continuacin, moverlas a bibliotecas de clases independientes en un momento posterior del ciclo de desarrollo. Scripts, que es la ubicacin recomendada para los archivos de script que respaldan la aplicacin. De forma predeterminada, esta carpeta contiene archivos de base AJAX de ASP.NET y la biblioteca de jQuery. Views, que es la ubicacin recomendada para las vistas. Las vistas usan archivos ViewPage (.aspx), ViewUserControl (.ascx) y ViewMasterPage (.master), adems de otros archivos relacionados con la representacin de vistas. La carpeta Views contiene una carpeta para cada controlador; el nombre de la carpeta es el prefijo del nombre del controlador. Por ejemplo, si tiene un controlador denominado HomeController, la carpeta Views contiene una carpeta denominada Home. De forma predeterminada, cuando el marco de MVC de

ASP.NET carga una vista, busca un archivo ViewPage (.aspx) con el nombre de la vista solicitada en la carpeta Views\nombreControlador. De forma predeterminada, existe tambin una carpeta denominada Shared en la carpeta Views, que no corresponde a ningn controlador. La carpeta Shared se usa para las vistas que se comparten entre varios controladores. Por ejemplo, puede colocar la pgina maestra de la aplicacin web en la carpeta Shared. Adems de las carpetas enumeradas anteriormente, una aplicacin web de MVC usa el cdigo del archivo Global.asax para establecer los valores predeterminados de enrutamiento global de direcciones URL, y usa el archivo Web.config para configurar la aplicacin.

Valores predeterminado de enrutamiento global de direcciones URL


Las rutas se inicializan en el mtodo Application_Start del archivo Global.asax. En el ejemplo siguiente se muestra un archivo Global.asax tpico que incluye la lgica del enrutamiento predeterminado. C# VB public class MvcApplication : System.Web.HttpApplication { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", name "{controller}/{action}/{id}", parameters new { controller = "Home", action = "Index", id = "" } defaults ); } protected void Application_Start() { RegisterRoutes(RouteTable.Routes); } } // Parameter // URL with

// Route

También podría gustarte