Crear un proyecto de ASP.NET MVC
de Microsoft
Este es el paso 1 de un tutorial de la aplicación "NerdDinner" gratuito que le guía por el proceso de creación de una aplicación web pequeña, pero completa, con MVC 1 de ASP.NET.
En el paso 1 se muestra cómo colocar la estructura básica de la aplicación NerdDinner.
Si se usa MVC 3 de ASP.NET, es aconsejable seguir los tutoriales Introducción a MVC 3 o MVC Music Store.
Paso 1 de NerdDinner: Archivo->Nuevo proyecto
Para comenzar la aplicación NerdDinner, selecciona el elemento de menú Archivo->Nuevo proyecto en Visual Studio 2008 o en Visual Web Developer 2008 Express, que es gratuito.
Se abrirá el cuadro de diálogo "Nuevo proyecto". Para crear una aplicación MVC de ASP.NET, se selecciona el nodo "Web" en el lado izquierdo del cuadro de diálogo y, después, se elige la plantilla de proyecto "ASP.NET MVC Web Application" en el derecho:
Importante: Asegúrese de que ha descargado e instalado MVC de ASP.NET; si no lo ha hecho, no se mostrará en el cuadro de diálogo Nuevo proyecto. Puede usar la versión 2 del Instalador de plataforma web de Microsoft si aún no lo ha instalado (MVC de ASP.NET está disponible en la sección "Plataforma web->Marcos y entornos de ejecución").
Al proyecto que se va a crear se le asignará el nombre "NerdDinner" y, después, se hará clic en el botón "Aceptar" para crearlo.
Al hacer clic en "Aceptar", Visual Studio abrirá un cuadro de diálogo adicional en el que se solicita la creación opcional de un proyecto de prueba unitaria para la nueva aplicación. Este proyecto permite crear pruebas automatizadas que comprueben la funcionalidad y el comportamiento de la aplicación (se explicar cómo se hace en un apartado posterior del tutorial).
La lista desplegable "Marco de pruebas" del cuadro de diálogo anterior se rellena con todas las plantillas del proyecto de prueba unitaria de MVC de ASP.NET disponibles instaladas en la máquina. Se pueden descargar versiones para NUnit, MBUnit y XUnit. También se admite el marco integrado de pruebas unitarias de Visual Studio.
Nota: El marco de pruebas unitarias de Visual Studio solo está disponible con Visual Studio 2008 Professional y versiones posteriores. Si usa VS 2008 Standard Edition o Visual Web Developer 2008 Express, deberá descargar e instalar las extensiones NUnit, MBUnit o XUnit para ASP.NET MVC para que se muestre este cuadro de diálogo. El cuadro de diálogo no se mostrará si no hay ningún marco de pruebas instalado.
Se usará el nombre predeterminado "NerdDinner.Tests" para el proyecto de prueba que se cree y se usará la opción de marco "Prueba unitaria de Visual Studio". Al hacer clic en el botón "Aceptar", Visual Studio creará una solución con dos proyectos: uno la nuestra aplicación web y otro para las pruebas unitarias:
Examen de la estructura de directorios de NerdDinner
Cuando se crear una aplicación MVC de ASP.NET con Visual Studio, agrega automáticamente varios archivos y directorios al proyecto:
De forma predeterminada, los proyectos de MVC de ASP.NET tienen seis directorios de nivel superior:
Directorio | Propósito |
---|---|
Controllers/ | Dónde se colocan las clases de Controller que controlan las solicitudes de direcciones URL |
/Models | Dónde se colocan las clases que representan y manipulan datos |
/Views | Dónde se colocan los archivos de plantilla de IU responsables de la representación de la salida |
/Scripts | Dónde se colocan los scripts y archivos de la biblioteca de JavaScript (.js) |
/Content | Dónde se colocan los archivos CSS y de imagen, y otro contenido que no es dinámico o no pertenece a JavaScript |
/App_Data | Dónde se almacenan los archivos de datos que se quieren leer o escribir. |
MVC de ASP.NET no requiere esta estructura. De hecho, lo habitual es que los desarrolladores que trabajan en aplicaciones de gran tamaño dividan la aplicación en varios proyectos para que sea más manejable (por ejemplo: las clases del modelo de datos suelen ir en un proyecto de biblioteca de clases distinto de la aplicación web). Sin embargo, la estructura del proyecto predeterminada proporciona una buena convención de directorio predeterminada que se puede usar para que la aplicación no tenga problemas.
Al expandir el directorio /Controllers, veremos que Visual Studio ha agregado dos clases de controlador (HomeController y AccountController) de forma predeterminada al proyecto:
Al expandir el directorio /Views, se pueden ver tres subdirectorios (/Home, /Account y /Shared), así como varios archivos de plantilla dentro de ellos, que también se han agregado al proyecto de forma predeterminada:
Al expandir los directorios /Content y /Scripts, verá un archivo Site.css que se usa para aplicar estilo a todos los HTML del sitio, así como a las bibliotecas de JavaScript que pueden habilitar la compatibilidad con jQuery y AJAX de ASP.NET en la aplicación:
Al expandir el proyecto NerdDinner.Tests, aparecerán dos clases que contienen pruebas unitarias para nuestras clases de controlador:
Estos archivos predeterminados que agrega Visual Studio nos proporcionan una estructura básica para una aplicación en funcionamiento, con página principal, página de acerca de, páginas de inicio de sesión/cierre de sesión/registro de la cuenta y una página de errores no controlados (todo conectado y funcionando desde el primer momento).
Ejecución de la aplicación NerdDinner
Para ejecutar el proyecto, elija los elementos de menú Depurar->Iniciar depuración o Depurar->Iniciar sin depurar:
Así se iniciará el servidor web integrado de ASP.NET que se incluye en Visual Studio y se ejecutará la aplicación:
A continuación se muestra la página principal del nuevo proyecto (dirección URL: "/") cuando se ejecuta:
Al hacer clic en la pestaña "Acerca de" se muestra una página acerca de (dirección URL: "/Home/About"):
Al hacer clic en el vínculo "Iniciar sesión" de la parte superior derecha, aparece una página de inicio de sesión (dirección URL: "/Account/LogOn")
Si no tiene una cuenta de inicio de sesión, puede hacer clic en el vínculo de registro (dirección URL: "/Account/Register") para crearla:
El código para implementar la funcionalidad de página principal anterior, página de acerca de y cierre de sesión o registro se agregó de forma predeterminada al crear el nuevo proyecto. Se usará como punto de partida de la aplicación.
Prueba de la aplicación NerdDinner
Si se usa la versión Professional Edition de Visual Studio 2008, o cualquiera posterior, se puede utilizar la compatibilidad integrada con el IDE de pruebas unitarias en Visual Studio para probar el proyecto:
Al elegir una de las opciones anteriores, se abrirá el panel "Resultados de pruebas" en el IDE, donde se puede ver si se han superado, o no, las 27 pruebas unitarias incluidas en el nuevo proyecto que abarcan la funcionalidad integrada:
Más adelante se ofrecerá más información sobre las pruebas automatizadas y se incorporarán pruebas unitarias adicionales que cubran la funcionalidad de la aplicación que se implementa.
siguiente paso
Ya tenemos una estructura de aplicaciones básica. Ahora vamos a crear una base de datos para almacenar los datos de la aplicación.