Story Transcript
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
Introducción 1. Presentación del caso de estudio
15
1.1 Presentación general 1.2 Presentación de las aplicaciones
15 15
2. Desarrollo del proyecto
16
3. Requisitos previos
16
4. El lenguaje C#: de la versión 1 a la versión 4
17
5. Recordatorio de las novedades del lenguaje C# 3
17
5.1 Propiedades con sintaxis simplificada 5.2 Métodos parciales 5.3 Inferencia de tipos, tipos anónimos e inicializadores de objetos y de colecciones 5.4 Métodos de extensión 5.5 Expresiones lambda 6. Crear peticiones LINQ
22
6.1 Presentación 6.2 Autopsia de una petición LINQ To Objects 6.3 Los operadores de petición 7. Novedades del lenguaje C# 4
22 22 23 24
7.1 Novedades relacionadas con los parámetros 7.1.1 Parámetros opcionales 7.1.2 Parámetros con nombre 7.2 Tipado dinámico 7.2.1 Presentación 7.3 Covarianza y contravarianza 7.3.1 Presentación 7.3.2 Covarianza y contravarianza en delegados
www.ediciones-eni.com
17 18 19 20 21
© Ediciones ENI
24 24 25 25 25 29 29 30
1/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
7.3.3 Covarianza e interfaces genéricas 7.3.4 Contravarianza e interfaces genéricas
31 33
Arquitectura del software 1. Presentación general de la arquitectura del software
39
2. Herramientas y tecnologías utilizadas
40
2.1 Plataforma .NET y lenguaje C# 2.1.1 Elegir el sistema de almacenamiento de datos 2.1.2 Acceso a datos 2.2 Desarrollo de la lógica de negocio 2.3 Interfaz Web 2.4 Interfaz móvil 2.5 Arquitectura 2.6 Esquema representativo 3. Análisis
40 41 42 42 43 43 44 47 48
3.1 UML 3.1.1 Diagrama de casos de uso 3.1.2 Diagrama de capas 3.1.3 Diagrama de secuencia 3.2 Cadena de ventanas 3.2.1 Hilo conductor 3.2.2 Contenido de las interfaces 3.2.3 Comentarios de usuarios e Importar/Exportar
48 49 53 56 57 58 60 63
Creación del componente de acceso a datos 1. Introducción
67
2. Realización del modelo entidad-relación
67
www.ediciones-eni.com
© Ediciones ENI
2/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
2.1 Presentación de las entidades 2.1.1 Datos referenciales 2.1.2 Entidades de la actividad comercial 2.1.3 Formaciones 2.1.4 Alumnos y profesores 2.2 El modelo entidad-relación 2.2.1 Presentación 2.2.2 Construcción 3. Del modelo entidad-relación al modelo de entidades 3.1 Funcionalidades del Framework Entity 3.2 Creación del modelo de entidades 3.3 Creación de una relación de herencia 3.4 Modelo de entidades obtenido 4. Del modelo de entidades al script de creación de la base de datos 4.1 Creación de la base de datos 4.2 Generación del script de creación de la base de datos 5. Gestión de datos en modo CRUD
73 73 73 81 85 86 86 88 91
5.1 Presentación 5.2 Configuración 5.3 Gestión del contexto de datos 5.3.1 Presentación 5.3.2 Las reglas de gestión 5.3.3 Implementación de las reglas de gestión 5.3.4 Borrado 5.3.5 Registro de modificaciones 5.3.6 Añadir, modificar y borrar datos y refresco de objetos 5.4 Carga y seguimiento de objetos en el contexto de datos 5.4.1 Primera carga de datos 5.4.2 Segunda carga de datos 6. Carga de datos a través de relaciones
www.ediciones-eni.com
67 68 68 69 70 71 71 71
© Ediciones ENI
91 91 92 92 93 94 97 98 98 100 100 100 102
3/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
7. Concurrencia de acceso a datos
103
Implementación de la base de datos 1. Introducción
107
2. Creación de la base de datos
107
2.1 Localización de los scripts de base de datos 2.2 Creación de la base de datos 2.3 Del modelo de entidades al modelo lógico de datos 2.4 Nuevos campos 2.5 Nuevas tablas 2.6 Tratamiento de relaciones de herencia 2.7 Generación del diagrama de base de datos
107 108 110 110 110 112 114
3. Añadir reglas de integridad adicionales
114
4. Seguridad
116
4.1 Autenticación de usuarios 4.2 Permisos de la base de datos
116 119
5. Copias de seguridad de la base de datos
122
Implementación de las reglas y la lógica de negocio 1. Presentación
127
2. Creación de clases parciales
127
2.1 Recordatorio sobre clases parciales 2.2 Contenido de las clases parciales
www.ediciones-eni.com
© Ediciones ENI
127 130
4/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
2.2.1 Fábricas 2.2.2 Métodos de carga de datos 2.2.3 Adición de propiedades de sólo lectura 2.3 Implementación de clases parciales 2.3.1 Presentación 2.3.2 La clase SolicitudCliente 2.3.3 La clase Cliente 2.3.4 La clase TratamientoCortesia 2.3.5 La clase SectorActividad 2.3.6 La clase Tema 2.3.7 La clase Formacion 2.3.8 La clase SesionFormacion 2.3.9 La clase Comercial 2.3.10 La clase Profesor 2.3.11 La clase Alumno 2.4 Implementación de restricciones de datos
130 131 132 133 133 133 135 136 137 137 137 140 140 141 142 142
Desarrollo de una aplicación Web con ASP .NET 1. Introducción
147
1.1 Presentación 1.2 Sobre el desarrollo de la aplicación 2. Creación y configuración del proyecto
147 147 147
2.1 Creación 2.2 Configuración 2.3 Agregar referencias 2.4 Destrucción del contexto de datos
147 149 150 151
3. Estructura y ejecución de la aplicación
153
3.1 Estructura de la aplicación 3.2 Ejecución de la aplicación
153 154
4. Formato y diseño de la aplicación
www.ediciones-eni.com
154
© Ediciones ENI
5/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
4.1 Presentación 4.2 Creación del tema 4.3 Aplicación del tema 4.4 Recursos gráficos 4.5 Utilización del formato automático 5. Estructura general de la aplicación
160
5.1 Presentación 5.2 Creación de la página maestra 5.3 Creación de la cabecera 5.4 Creación del menú 5.4.1 Presentación 5.4.2 Creación de elementos del menú 5.4.3 Creación del menú 5.4.4 Uso del menú 5.5 Creación de la zona de Información de Usuario 5.5.1 Presentación 5.5.2 Implementación 5.6 Creación del cuerpo 5.6.1 Presentación 5.6.2 Creación e implementación de la interfaz IMasterPage 5.6.3 Creación de la clase de contexto 5.6.4 Selección de elementos de menú 5.6.5 Gestión de errores 5.7 Asegurando la aplicación 5.7.1 Presentación 5.7.2 Implantación del servicio de autenticación ASP .NET 5.7.3 Creación del provider personalizado 5.7.4 Proceso de identificación de usuarios 5.7.5 Autenticación de usuarios 5.7.6 Desconexión de usuarios 6. Realización de las funcionalidades de la aplicación 6.1 Controles de visualización y de gestión de datos 6.2 Gestión de profesores
www.ediciones-eni.com
154 155 157 158 159
© Ediciones ENI
160 160 163 164 164 165 168 171 172 172 172 174 174 175 176 178 178 178 178 179 180 182 183 188 189 189 189
6/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
6.2.1 Presentación 6.2.2 Visualizar la lista de profesores 6.2.3 Añadir un profesor 6.2.4 Editar un profesor 6.2.5 Eliminar un profesor 6.2.6 Perfil de un profesor 6.3 Gestión de clientes 6.3.1 Presentación 6.3.2 Visualizar la lista de clientes 6.3.3 Gestión de sectores de actividad 6.3.4 Reparto de clientes por sectores de actividad 6.3.5 Visualizar los alumnos de un cliente 6.3.6 Ficha de un alumno 6.4 Gestión de formaciones 6.4.1 Presentación 6.4.2 Visualizar la lista de formaciones 6.4.3 Lista de profesores que imparten formaciones 6.5 Búsqueda de alumnos 6.5.1 Presentación 6.5.2 Visualizar la lista de alumnos por cliente 6.6 Tratamiento de solicitudes de cliente 6.6.1 Tareas que hay que realizar 6.6.2 Mostrar el número de solicitudes pendientes 6.6.3 Gestión de solicitudes de cliente 7. Ajaxización de la aplicación
247
7.1 Presentación 7.2 Uso del control ScriptManager 7.3 Refresco automático del número de solicitudes pendientes 7.3.1 Presentación 7.3.2 Uso de los controles UpdatePanel y Timer 7.4 Consumo de métodos de página 7.4.1 Presentación 7.4.2 Activación de métodos de página 7.4.3 Implementación de un método de página 7.4.4 Consumo de un método de una página
www.ediciones-eni.com
189 190 202 208 209 210 214 214 215 219 224 227 229 231 231 233 235 237 237 237 240 240 240 241
© Ediciones ENI
247 247 248 248 248 250 250 250 251 252
7/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
7.5 Gestión de errores de actualizaciones parciales de página 7.5.1 Presentación 7.5.2 Gestión de errores del lado servidor 7.5.3 Gestión de errores del lado cliente 8. Añadiendo jQuery para dinamizar la aplicación 8.1 Presentación 8.2 Añadiendo el Framework jQuery en la aplicación 8.3 Registro del Framework jQuery 8.4 Usando jQuery 8.4.1 Animación de los elementos del menú 8.4.2 Animación de la zona de Información de Usuario 9. Despliegue
254 254 255 255 256 256 256 257 258 258 260 261
9.1 Presentación 9.2 Personalización del archivo de configuración 9.3 Publicación de la base de datos 9.3.1 Creación de la base de datos objetivo 9.3.2 Configuración del despliegue de la base de datos 9.4 Despliegue desde Visual Studio 9.5 Despliegue mediante un paquete de despliegue 9.5.1 Configuración 9.5.2 Generación de un paquete de despliegue 9.5.3 Despliegue 9.6 Encriptación del archivo de configuración
261 262 264 264 264 268 269 269 270 270 276
Desarrollo RIA con Silverlight 1. Introducción a Silverlight 4
281
1.1 ¿Qué es Silverlight? 1.1.1 Historia 1.1.2 Herramientas 1.1.3 Lenguaje XAML 1.1.4 Despliegue
www.ediciones-eni.com
281 281 282 283 284
© Ediciones ENI
8/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
1.2 Primeros pasos con XAML 1.2.1 ¿Páginas o UserControls? 1.2.2 Las ventanas modales 1.2.3 Contenedores para nuestras interfaces 1.2.4 Creación del menú 1.2.5 Creación del botón de autenticación 1.2.6 Transformar la imagen de autenticación en vectorial 1.2.7 Mostrar los sectores de actividad con C# 1.3 Enlace de datos (DataBinding) 1.3.1 Mostrar los sectores de actividad mediante recursos 1.3.2 Edición y eliminación de sectores de actividades 1.3.3 Enlace de datos con UIElement 2. Arquitectura M-V-VM
315
2.1 Introducción al M-V-VM 2.2 Creación de la arquitectura de nuestra aplicación 2.2.1 ViewModel de la gestión de sectores de actividad 2.2.2 Capturar el clic en el ViewModel 2.2.3 Enlazar una View a un ViewModel 2.2.4 Creación de ViewModels y Event Aggregator 2.2.5 Navegación entre páginas en el ViewModel 3. Mejorar la interactividad
315 316 316 317 319 320 325 327
3.1 Mejorar el aspecto de la tabla de datos 3.2 Crear un template de botón de autenticación 3.3 Aplicar transformaciones y proyecciones 3.4 VisualStateManager, animaciones y M-V-VM 3.5 Desencadenar una animación desde el ViewModel 3.6 Desencadenar una animación desde la View 3.7 Capturar un evento distinto de clic con M-V-VM 3.8 Utilizar los efectos de Pixel Shaders 4. Ir un poco más lejos en la experiencia del usuario 4.1 Aprovechar la aceleración hardware 4.2 Ampliar nuestra aplicación a pantalla completa
www.ediciones-eni.com
287 287 293 295 297 300 305 306 309 309 311 313
© Ediciones ENI
327 329 338 340 343 345 347 349 350 350 351
9/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
4.3 Abrir nuestra aplicación fuera del navegador 4.4 Detectar la rueda del ratón 4.5 Poner nuestra aplicación en caché 4.6 Gestionar la impresión 4.7 Captura de la WebCam y Drag 'n' drop
352 358 358 361 363
Creación de la capa de Servicio 1. Windows Communication Foundation 4 1.1 Los servicios en sus aplicaciones 1.1.1 Conocimientos básicos 1.1.2 Un poco de vocabulario 1.1.3 .NET y los servicios 1.2 Introducción a WCF 1.2.1 Service, EndPoint y Metadata 1.2.2 Crear su primer servicio 1.2.3 Contrato de datos 1.2.4 Contrato de servicio 1.2.5 Alojamiento 1.2.6 Referencia de servicio 1.2.7 Consumo del servicio 1.2.8 Gestión de excepciones 1.2.9 Seguridad, WCF y Silverlight 1.2.10 Las principales novedades de WCF 4 2. WCF Data Services
371 371 371 372 372 372 373 375 376 380 382 388 390 392 395 399
2.1 Introducción 2.1.1 ¿Qué son los WCF Data Services? 2.1.2 Comparación entre WCF Data Services y WCF 2.1.3 El protocolo OData 2.2 Primeros pasos con WCF Data Services 2.2.1 Crear un servicio WCF DS 2.2.2 Realizar peticiones por URL 2.2.3 QueryInterceptor
www.ediciones-eni.com
371
© Ediciones ENI
399 399 399 400 401 401 404 408
10/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
2.2.4 Cliente Silverlight 2.2.5 Seguridad y WCF Data Services 3. WCF RIA Services
409 414 416
3.1 Introducción a los WCF RIA Services 3.1.1 Principios 3.1.2 Comparación con otras tecnologías 3.2 Realización de la parte servicio 3.2.1 Mantener un proyecto compatible con WCF RIA Services 3.2.2 Crear un servicio de dominio 3.2.3 WCF RIA Services y MVVM 3.2.4 Obtener los profesores desde Silverlight 3.2.5 Crear la vista para mostrar los profesores 3.2.6 Eliminar un profesor desde Silverlight 3.2.7 Añadir un profesor desde Silverlight 3.2.8 Editar un profesor desde Silverlight 3.2.9 Reglas de validación y de visualización 3.2.10 Recuperar las sesiones de formación asociadas 3.2.11 Interoperabilidad con OData 3.2.12 Compartir clases de la lógica de negocio 3.2.13 Crear métodos personalizados 3.2.14 Seguridad
416 416 417 417 417 418 422 423 427 431 432 433 435 440 440 443 444 445
Implementación de la versión Windows Phone 1. Desarrollo para Windows Phone 7
451
1.1 Introducción al desarrollo para Windows Phone 7 1.1.1 Sistema operativo y hardware 1.1.2 Las tecnologías de desarrollo 1.1.3 Descubrir el entorno de desarrollo 2. Nuestro proyecto en versión Mobile
455
2.1 Funcionalidades de la aplicación 2.2 Arquitectura del software y creación del proyecto
www.ediciones-eni.com
451 451 452 453
© Ediciones ENI
455 456
11/12
Visual Studio 2010 Desarrollo de aplicaciones web con C# 4, Framework Entity 4, ASP .NET 4.0,...
2.2.1 Creación del proyecto y fundamentos básicos 2.2.2 Obtener las herramientas para MVVM 2.2.3 Inicialización de los ViewModels 2.2.4 Creación e instanciación de un Locator 2.2.5 Inicialización de la primera vista 2.3 Desarrollo WP7 2.3.1 Interfaz gráfica de la aplicación 2.3.2 Configurar la miniatura de la aplicación 2.3.3 Definir la página de carga 2.3.4 Creación del menú principal 2.3.5 Creación de la interfaz "Profesores" 2.3.6 Consumir un servicio 2.3.7 Creación de la interfaz "Añadir Profesor" 2.3.8 Creación de la interfaz "Sitio Web" 2.3.9 Creación de la interfaz "Contacto" 2.3.10 Almacenamiento de datos 2.3.11 Añadir sonido en la navegación
índice
www.ediciones-eni.com
456 458 461 463 464 466 466 468 470 471 476 480 484 487 487 490 494
495
© Ediciones ENI
12/12