Está en la página 1de 12

CARRERA DE ANALISIS DE SISTEMAS

ANALISIS Y RESUMEN DOCUMENTACION MVC

ESTUDIANTES.:
Ayo Jaime

Caisa Nelson

Coro Fernanda

Padilla Paul

Velsquez Jennifer

Docente: Ing. Roberto Morales

Quito, Octubre 2017


2

MODELO, VISTA, CONTROLADOR (MVC)


1. ASP.NET MVC .................................................................................................................. 3
1.1 Introduccin ................................................................................................................ 3
2. EVOLUCION DEL ASP (VSBCRIPT) a ASP.NET WEBFORMS EN EL SI ................. 3
2.1 Fase Inicial .................................................................................................................. 3
2.2 1ra Evolucin .............................................................................................................. 3
2.3 2da Evolucin .............................................................................................................. 4
2.4 ASP.NET (WEBFORMS) En su Fase Inicial ............................................................. 4
2.5 ASP.NET (WEBFORMS) En su Fase Actual ............................................................. 4
3. CONTROLADOR .............................................................................................................. 5
4. VISTA ................................................................................................................................ 7
5. MODELO ........................................................................................................................... 8
6. OBJETIVOS ..................................................................................................................... 11
7. CONCLUSIONES ............................................................................................................ 11
8. RECOMENDACIONES .................................................................................................. 11
9. ANEXOS .......................................................................................................................... 12
3

1. ASP.NET MVC

1.1 Introduccin

La primera aparicin en el ao 2009 la segunda versin aparece en 2010 y la tercera versin

en 2011.

Visual Studio en la versin 2008 y 2010 incluyen plantillas y herramientas adems de

conjuntos de libreras que proporcionan nuevas funcionalidades sin embrago en la 2010 ya

incorpora ASP.NET MVC 2 y para la versin de 2008 es necesario descargar e instalarlo.

El ASP.NET MVC 3 Y 4 solo funciona en Visual Studio 2010 y 2012.

El MVC en un estilo de arquitectura que separa los datos, la interfaz de usuario y la lgica.

Modelo: los datos, la lgica de negocio y mecanismos de persistencia.

Vista: interfaz de usuario y mecanismos de interaccin con este.

Controlador: gestiona y transforma los flujos de informacin con intermediario entre el modelo

y la vista.

2. EVOLUCION DEL ASP (VSBCRIPT) a ASP.NET WEBFORMS EN EL SI

2.1 Fase Inicial

El cdigo estaba integrado en el cdigo HTML, los include hacan referencias muy

generales y su gestin era muy complicada debido al tamao de los ficheros y el cdigo era

reutilizado muy poco.

2.2 1ra Evolucin


Permite realizar conexin y operacin con base de datos, control de errores y seguridad,

validacin de campos y trabajar con ficheros PDF o Excel, el cdigo HTML se genera desde

programacin.

Empieza trabajar con un modelo (clases generales) controlador (El propio ASP).
4

2.3 2da Evolucin


Se incluye el trabajo con plantillas y con todas las clases creadas se dispone de un

Framework completo de trabajo, estas plantillas son almacenadas en la memoria de la

aplicacin para mejorar el tiempo de carga. Esto reduce en un 90% el tamao de los ficheros

ASP, tambin se compilan clases para evitar duplicidad de include y se reutiliza el cdigo.

Esta es la primera versin del MVC Modelo (clases), Visa (plantillas) y controlador (El

propio ASP.)

2.4 ASP.NET (WEBFORMS) En su Fase Inicial


Se crea una Framework bsico que permite el trabajo con base de datos (Oracle y SQL

Server), permitiendo la gestin de errores con avisos personalizados, gestin de Seguridad,

sql injection, validacin de campos, conversiones, envos de correos, descargas.

Buena parte de la lgica se desarrolla dentro del ASPX aunque se comienza a desarrollar

con clases/objetos.

2.5 ASP.NET (WEBFORMS) En su Fase Actual


Los ASPX se encargan exclusivamente de gestionar los eventos, y muy poco cdigo para

crear y usar objetos.

El Framework ha madurado, se utilizan en muchas aplicaciones y se crea un nuevo

concepto de plantilla que unifica el entorno en todas las aplicaciones.

El programador selecciona el entorno para el que va orientada su aplicacin, y en tiempo

de ejecucin se ajusta a ste. Es totalmente transparente para ste.

Los elementos del MVC se definen de la siguiente manera:

Modelo (clases), vista (plantillas y master Pages) y el controlador (el propio ASPX).
5

3. CONTROLADOR

CONTROLADOR
Es totalmente independiente de
los otros, ademas nos permite
realizar las primeras pruebas de
Se crea una nueva clase nuestra aplicacin.
dentro de un unico metodo
Index.
Este metodo es nuetro
acceso al controlador, nos
devuelve un tipo Action
Result que lo genera la
ENRUTAMIENTO PARAMETROS llamada a View().

Permite usar
direcciones URL que Lo normal es que se envie
no es necesario asignar un parametro, puede ser el
a archivos. Id del modelo con el que
trabaja el controlador.

Los modelos de direccion


URL en MVC suelen incluir Parametro por Defecto:
los marcadores de posicion public string Editar(int id)
"{controler}" y "{action}" {
return "Acceso al mtodo editar
con el parmetro id a " +
El modelo de Direccion URL id.ToString(CultureInfo.Invariant
es: Culture);
{controler}/{action}/{id} }

La direccion correspondiente a
este Enrutamiento seria: En Ocaciones necesitaremos pasar
mas de un parametro al metodo, el
Http://server/Catalogo/Listado/cur proceso es similaf al anterior solo
sos que se aade tantos parametros
Donde: com o se necesite.
Controller = Catalogo
Action = Listado
Id = cursos
public string Editar(int id, string salida)
{
return "Acceso al mtodo editar con el
parmetro id a
"+id.ToString(CultureInfo.InvariantCulture)
+" y salida a "+salida;}
6

ENRUTAMIENTO

MVC 3 MVC 4

Estos controladores se El proceso es muy parecido pero en


derivan de la clase ficheros diferentes. s gestiona en el
ControllerBase, este proceso fichero RouteConfig.cs, dentro de la
es algo laborioso, el carpeta App_Start, se crea una clase
enrutamiento se hace en el RouteConfig en la cual se registra las
fichero global.asax. rutas

public class MvcApplication :


System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection
public static void routes)
RegisterGlobalFilters(GlobalFilterCollection filters)
{
{ routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
filters.Add(new HandleErrorAttribute()); routes.MapRoute(
} name: "Default",
public static void RegisterRoutes(RouteCollection url: "{controller}/{action}/{id}",
routes) defaults: new { controller = "Home", action =
{ "Index", id = UrlParameter.Optional }
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); );
}
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id =
UrlParameter.Optional } // Parameter defaults
);
}
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
}
7

4. VISTA

VISTA
Es donde realizamos la
vista del sistema

Debemos volver a Si la palabra View Del cdigo


cambiar el tipo de aparezce en rojo nos generado destacar RAZOR
devolucin de datos indica que no hemos tres cosas
de nuestros mtodos declarado la vista para
de string a ese mtodo. Para
ActionResult. Luego hacerlo nos ponemos 1. La sintaxis @{ .. }
cambiar el return dentro del cdigo del es de Razor y nos
cadena de texto por mtodo (lo ms cmodo permite ejecutar
return View(). es hacerlo sobre la cdigo C# o el En una sintaxis basada
declaracin de ste) y lenguaje con el que se en C# (aunque se puede
pulsamos botn derecho trabaje en el proyecto. programar en Visual
y seleccionar Add View Hoy y maana lo Basic) que permite
veremos con detalle. usarse como motor de
Las opciones por programacin en las
defecto seleccionan el 2. Aparece un objeto vistas o plantillas de
motor de trabajo ViewBag que no hemos nuestros controladores.
Razor y que utilice Nos genera un cdigo declarado, pero que tiene Es una de las novedades
layout o master page. muy bsico @{ propiedades, en este caso de ASP.NET MVC 3
La dejamos tal cual y ViewBag.Title = Title. Este objeto se usa
pulsamos Add. "Index"; } para pasar datos entre
<h2>Index</h2> nuestro controlador y la
vista.

3. Por defecto usa como


master page el que est
definido por defecto (Views
> Shared > _Layout.cshtml) 4. Pulsando e botn derecho
dentro del cdigo del mtodo
y en esta ocasin seleccionar
Go To View

5. Accediendo a la capeta
Views, desplegar Demo y
visualizaremos Index.cshtml.
Doble clic sobre el fichero y
lo tendremos abierto para
trabajar.
8

5. MODELO

Es la representacin de la
MODELO informacin con la cual el
sistema opera, por lo tanto,
gestiona todos los accesos a
dicha informacin

En ocasiones el traspaso de informacin entre el controlador y la


vista puede ser muy tedioso y trabajado por lo cual una solucin
factible es la creacin de un modelo

Para la creacin de un modelo ya en nuestro proyecto se


debe seguir los siguientes pasos:
Clic derecho en la carpeta modelos
En agregar una clase
Y le damos cualquier nombre

El cdigo que nos genera


Luego le aadimos
propiedades por
namespace MVC_3.Models ejemplo un (get;set)
{
public class Libro
{
}
}
public class Libro
{
public string Isbn { get; set; }
public string Titulo { get; set; }
public string TipoLibro { get; set;}
}
9

USAR UN MODELO DENTRO DE UN


CONTROLADOR / VISTA

Para poder llamarlo desde el


controlador se debe llamar al A continuacin, en el mtodo
namespace del modelo que del controlador creamos un
hemos creado. libro y se lo pasamos a la
vista
using MVC_3.Models;

public ActionResult Index()


{
var libro = new Libro {Isbn = "1122", Titulo = "El principito", TipoLibro = "Novela"};
return View(libro);
}

Por ltimo, dentro de la vista tenemos que indicar que tipo de datos vamos a recibir. En la

primera lnea aadimos

@model MVC_3.Models.Libro

Y donde lo queramos mostrar Model.Propiedad

El ttulo del libro es <strong>@Model.Titulo</strong> (Figura 1)

Otro caso que nos encontraremos habitualmente ser el generar un listado de datos, en

nuestro caso de libros.

El proceso es muy similar, por una parte, el controlador deber enviar el listado de libros

public ActionResult Index()


10

{
var libros = new List <Libro>
{
new Libro {Isbn = "1122", Titulo = "El principito", TipoLibro = "Novela"},

new Libro {Isbn = "1122", Titulo = "Steve Jobs", TipoLibro = "Biografa"}

};

return View(libros);
}

Y en la vista debemos indicar el tipo de datos del modelo, en este caso un listado de libros.

Para ello en vez de usar List <MVC_3Models.Libro> se debe remplazar por

<MVC_3.Models.Libro>

@model IEnumerable<MVC_3.Models.Libro>

Listado de libros

<ul>

@foreach(var libro in Model)

{
<li>@libro.Titulo (@libro.TipoLibro) </li>
}

</ul> (Figura 2)
11

6. OBJETIVOS

Proporcionar una alternativa con el ASP.NET MVC para crear aplicaciones web.

Facilitar la administracin de la complejidad, al dividir una aplicacin en el

modelo, la vista y el controlador

7. CONCLUSIONES

ASP.NET es un lenguaje de desarrollo de aplicaciones web y nos presenta el modelo

MVC (Modelo, Vista, Controlador), que es un estilo de arquitectura de software muy maduro

y que ha demostrado su validez a lo largo de los aos en todo tipo de aplicaciones, y sobre

multitud de lenguajes y plataformas de desarrollo.

Este modelo separa los datos de una aplicacin, la interfaz de usuario, y la lgica de

control en tres componentes distintos. Esta separacin ayuda a administrar la complejidad al

compilar una aplicacin, ya que le permite centrarse en cada momento en un nico aspecto de

la implementacin.

8. RECOMENDACIONES

Realizar investigaciones para ver todas las ventajas que nos puede brindar este modelo y

las nuevas funcionalidades a nivel de API (Interfaz de Programacin de Aplicaciones) en la

que incluye plantillas y herramientas. Entre otras novedades.


12

9. ANEXOS

(Figura 1)

(Figura 2)

También podría gustarte