ASP .NET MVC: Desarrollo web con el patrón MVC
-
Upload
riojadotnet -
Category
Software
-
view
237 -
download
5
Transcript of ASP .NET MVC: Desarrollo web con el patrón MVC
![Page 1: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/1.jpg)
Programación Web con MVC
1
Rioja{dotnet}
Juan Valer @juanvalertMoisés Martínez de Quel @mdquel
![Page 2: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/2.jpg)
Rioja{dotnet
}
AGENDA
1. Introducción
2. Routing y controladores
3. Data annotations
4. Vistas y vistas parciales
5. API
6. Áreas
2
![Page 3: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/3.jpg)
Rioja{dotnet
}
INTRODUCCIÓN
3
El patrón Modelo-Vista-Controlador permite separar las responsabilidades de una aplicación Web en partes diferenciadas y ofrece diversos beneficios:
•Facilidad de mantenimiento•Facilidad de creación de pruebas y testeo unitario•Orientado a la realización de pruebas unitarias.•Urls limpias, fáciles de recordar y adecuadas para buscadores•Control absoluto sobre el HTML generado•Potente integración con JQuery y otras librerías AJAX•Magnifico rendimiento y escalabilidad•Gran extensibilidad y flexibilidad
![Page 4: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/4.jpg)
Rioja{dotnet
}
INTRODUCCIÓN
4
![Page 5: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/5.jpg)
Rioja{dotnet
}
INTRODUCCIÓN
5
![Page 6: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/6.jpg)
Rioja{dotnet
}
ROUTING Y CONTROLADORES
6
Patrón Ejemplo de URLs coincidentes
{controller}/{action}/{id} product/view/sony-vaio
product/view/sony-vaio/vote
admin/{controller}/{action}/{id} admin/users/edit/5
admin/threads/add
admin/account/logout
{controller}/{action}/{year}/{month} blog/archive/2009/12
{controller}/{action}/{forumName} /forum/browse/
/forum/browse/ASP.NET
![Page 7: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/7.jpg)
Rioja{dotnet
}
ROUTING Y CONTROLADORES
7
![Page 8: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/8.jpg)
Rioja{dotnet
}
PROYECTO ONE ASP.NET
8
La base de mvc6
Un proyecto completoMVC WebWeb API: interface agnósticas al front-end
One asp.net totalmente funcional únicamente en Visual Studio 2013
![Page 9: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/9.jpg)
Rioja{dotnet
}
¿QUIEN DIJO MIEDO…?
9
Entender lo que pasa 1º Global.asax (indicamos como vamos a funcionar)
protected void Application_Start(){
AreaRegistration.RegisterAllAreas();FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);RouteConfig.RegisterRoutes(RouteTable.Routes);BundleConfig.RegisterBundles(BundleTable.Bundles); //bootstrap
}
2º Web.config (Parametros de configuración del servidor web)
<staticContent><mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
3º RuteConfig.cs (Encaminador)
Su nombre lo indica:ModelsControllersViews
![Page 10: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/10.jpg)
Rioja{dotnet
}
ROUTING Y CONTROLADORES
10
![Page 11: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/11.jpg)
Rioja{dotnet
}
ROUTING Y CONTROLADORES
11
![Page 12: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/12.jpg)
Rioja{dotnet
}
ROUTING Y CONTROLADORES
12
Mapeo de ruta
(RouteConfig.cs)
Controlador
![Page 13: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/13.jpg)
Rioja{dotnet
}
RESTRICCIONES
13
![Page 14: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/14.jpg)
Rioja{dotnet
}
RESTRICCIONES
14
![Page 15: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/15.jpg)
Rioja{dotnet
}
RESTRICCIONES
15
Desde las restricciones personalizadas tenemos acceso a:
•nombre del parámetro que estamos intentando validar•los valores de todos los parámetros•la regla actual•el contexto de la petición, de donde podemos extraer información como: cookies, encabezados, query string, etc.•datos del usuario autenticado
![Page 16: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/16.jpg)
Rioja{dotnet
}
ATTRIBUTE ROUTING
16
![Page 17: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/17.jpg)
Rioja{dotnet
}
ATRIBUTOS COMPLEJOS
17
![Page 18: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/18.jpg)
Rioja{dotnet
}
ATRIBUTOS COMPLEJOS
18
![Page 19: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/19.jpg)
Rioja{dotnet
}
ATRIBUTOS COMPLEJOS
19
![Page 20: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/20.jpg)
Rioja{dotnet
}
ATRIBUTOS COMPLEJOS
20
![Page 21: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/21.jpg)
Rioja{dotnet
}
RESTRICCIONES PERSONALIZADAS
21
![Page 22: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/22.jpg)
Rioja{dotnet
}
VISTAS
22
![Page 23: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/23.jpg)
Rioja{dotnet
}
VISTAS
23
![Page 24: ASP .NET MVC: Desarrollo web con el patrón MVC](https://reader030.fdocuments.net/reader030/viewer/2022012403/55abac201a28ab85778b4700/html5/thumbnails/24.jpg)
Rioja{dotnet
}
GRACIAS!!
Web: http://www.riojadotnet.com
Twitter: http://www.twitter.com/riojadotnet
E-mail: [email protected]
24