You are on page 1of 12

ASP.

NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

Visual Studio 2013 y .NET 4.5.1


1. Novedades de Visual Studio 2013

15

1.1 Instalacin
1.2 Interfaz del programa
1.2.1 La pgina de inicio
1.2.2 Las ventanas de Visual Studio
1.2.3 Las actividades ligadas al desarrollo
1.2.4 Los paquetes NuGet
1.2.5 Las pruebas codificadas de interfaz de usuario
1.3 Gestin del cdigo
1.3.1 El modo esquema y las regiones
1.3.2 La refactorizacin (refactoring)
1.3.3 Los fragmentos de cdigo (code snippets)
1.4 Documentacin
1.5 Control del cdigo fuente con Visual Studio Online
1.6 La herramienta MS Build
2. C#5 de un vistazo

61

2.1 Clases parciales


2.2 Mtodos annimos
2.2.1 Eventos internos
2.2.2 Las funciones auxiliares
2.2.3 Simplificar la edicin de cdigo
2.3 La inferencia de tipo
2.4 Las expresiones lambda
2.5 Clases dinmicas y tipos annimos
2.6 Extensin de clases sin herencia
2.7 Tipos nullables
2.8 Iterador
2.8.1 Iterador en C#1
2.8.2 Iterador a partir de C#3
2.9 Genericidad
2.9.1 Definir un tipo genrico

www.ediciones-eni.com

17
18
18
20
26
34
36
41
41
43
44
47
48
58

Ediciones ENI

61
62
63
65
67
69
70
70
71
73
74
74
76
77
77

1/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

2.9.2 Especializacin parcial


2.9.3 Uso de un tipo genrico
2.9.4 El espacio de nombres System.Collections.Generic

79
80
80

Los sitios web ASP.NET 4.5.1


1. El modelo de compilacin

83

1.1 Del CGI al modelo ASP.NET 1.X


1.1.1 La interfaz CGI
1.1.2 Las pginas dinmicas ASP
1.2 Clases parciales para las pginas
1.2.1 Estructura de una pgina ASPX 4.5.1
1.2.2 Modificaciones de una pgina ASPX 4.5.1
1.3 El cdigo compartido en App_Code
1.4 Los ensamblados referenciados
1.4.1 Referencias dinmicas
1.4.2 Referencias explcitas en el Web.config
1.5 La cach de construccin
1.6 Las aplicaciones web de Visual Studio
2. El rol del servidor web

99

2.1 El servidor IIS


2.1.1 El filtro ISAPI para ASP.NET
2.1.2 Creacin de un sitio web ASP.NET con IIS
2.2 El servidor de desarrollo ASP.NET
2.3 Otros servidores
3. El pipeline HTTP de IIS

99
99
100
102
104
105

3.1 Funcionamiento de IIS


3.1.1 Primeros pasos en HTTP con Telnet
3.1.2 Detalle del procesamiento IIS
3.2 La clase HttpContext
3.3 La clase HttpApplication
3.3.1 Ciclo de vida de la aplicacin

www.ediciones-eni.com

83
84
87
89
89
91
92
94
94
95
96
97

Ediciones ENI

105
105
107
109
110
110

2/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

3.3.2 Agregar un Global.asax


3.3.3 Crear un mdulo HTTP
3.4 Los controladores (handlers) HTTP
3.4.1 Crear un handler ASHX
3.4.2 Crear un handler en una DLL

111
115
117
119
121

Los Web Forms


1. Los Web Forms

125

1.1 Estructura de una pgina ASPX


1.1.1 Estilo anidado, en lnea y separado
1.1.2 Los scriptlets
1.1.3 Jerarqua de controles
1.1.4 Agregar controles dinmicamente
1.1.5 Objetos intrnsecos
1.2 Ciclo de vida de una pgina
1.2.1 El ciclo nominal
1.2.2 Identificar las peticiones de tipo postback
1.3 Los controles web
1.3.1 Las etiquetas HTML
1.3.2 El atributo runat="server"
1.3.3 Los controles HTML
1.3.4 Los controles web
1.3.5 Controles basados en plantillas (template)
1.3.6 Controles de usuario y controles personalizados
1.4 Navegacin entre pginas
1.4.1 Los enlaces de hipertexto
1.4.2 Redirecciones desde el servidor
1.5 Postback y cross postback
1.6 Los callback
1.7 Validacin de los datos introducidos por el usuario
1.7.1 Principio de la validacin
1.7.2 Los controles de validacin
1.7.3 Validacin personalizada

www.ediciones-eni.com

Ediciones ENI

126
130
133
136
139
140
142
142
146
146
147
148
150
150
155
155
156
156
157
158
160
166
166
168
172

3/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

1.7.4 Validacin discreta

173

2. Organizar la presentacin

177

2.1 Temas y mscaras


2.1.1 Hojas de estilo CSS
2.1.2 Temas
2.1.3 Mscaras
2.2 Controles de usuario .ascx
2.2.1 Crear un control de usuario
2.2.2 Utilizar un control de usuario
2.2.3 Agregar propiedades y eventos
2.3 Las pginas maestras
2.3.1 Crear una pgina maestra
2.3.2 Crear una pgina de contenido
2.3.3 Programar pginas maestras y pginas de contenido
2.3.4 Aplicar dinmicamente una pgina maestra
3. Componentes personalizados

200

3.1 Funcionamiento de los componentes personalizados


3.1.1 Tipos de componentes personalizados (custom controls)
3.1.2 Creacin de una librera de componentes
3.1.3 Creacin del componente ColoredPad
3.1.4 Empaquetado y pruebas
3.2 NumericTextBox, componente derivado de TextBox
3.2.1 Creacin del control
3.2.2 Propiedades y eventos
3.2.3 Representacin
3.3 ChartControl, componente grfico que utiliza GDI+
3.3.1 Funcionamiento
3.3.2 Representacin
3.3.3 Integracin y pruebas
3.4 PictureBrowser, componente basado en una plantilla
3.4.1 Funcionamiento
3.4.2 Implementacin del componente
3.4.3 Las plantillas

www.ediciones-eni.com

177
177
178
180
183
183
185
186
191
191
194
197
199

Ediciones ENI

200
200
201
201
210
212
212
213
215
216
216
217
218
219
219
222
223

4/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

3.4.4 Representacin
3.4.5 Eventos
3.4.6 Informacin relativa al diseo en Visual Studio
3.4.7 Uso del componente
3.5 Recursos incorporados en DLL
4. AJAX

233

4.1 Del callback a AJAX


4.2 El administrador de script ScriptManager
4.2.1 Usar ScriptManager con servicios web
4.3 El componente UpdatePanel
4.3.1 Funcionamiento
4.3.2 Implementacin
4.3.3 Gestin de errores
4.3.4 Los triggers
4.4 El componente UpdateProgress
4.5 El Timer
4.6 Programacin orientada a objetos con JavaScript
4.6.1 Insercin de cdigo JavaScript en una pgina
4.6.2 Crear objetos y clases JavaScript
4.6.3 El estilo AJAX
4.6.4 Clases derivadas
4.6.5 Implementar interfaces
4.7 El modelo de extensin AJAX
4.7.1 Estructura del framework
4.7.2 La clase aplicacin
4.7.3 Los controles AJAX del toolkit
4.7.4 Definir controles personalizados en JavaScript
4.7.5 Controles AJAX en C#
4.8 Introduccin a jQuery
4.8.1 Instalacin
4.8.2 Recorrer el DOM
4.8.3 Intervenir en la pgina
4.8.4 Los plugins

www.ediciones-eni.com

224
227
228
229
231

Ediciones ENI

233
234
235
238
238
238
240
242
243
244
244
245
246
250
251
252
253
253
255
258
262
268
272
272
273
275
277

5/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

Los sitios web MVC


1. El enfoque MVC

281

1.1 El patrn de diseo MVC


1.2 Evolucin de MVC

281
283

2. Los sitios ASP.NET MVC

283

2.1 Creacin de un sitio


2.2 Organizacin de carpetas
2.3 Creacin del modelo
2.4 Definicin del controlador
2.5 Agregar vistas

283
285
286
289
291

3. Definicin de las rutas

295

4. Ir ms all

296

4.1 De una accin a otra


4.2 Actualizacin del modelo y redireccin
4.3 Validacin
5. El motor de vistas Razor y la compatibilidad con dispositivos mviles
5.1 Pasar el sitio a IIS estndar
5.2 Pginas generadas por Razor
5.3 Probar con un emulador Android
6. Las aplicaciones Single Page Applications SPA
6.1 Utilizar las Web API
6.1.1 Crear un proyecto Web API
6.1.2 Establecer un modelo y un controlador
6.1.3 La pgina nica
6.2 Utilizar KnockOut para enlazar los datos

296
302
302
304
304
306
309
311
311
311
313
314
316

El acceso a datos con ADO.NET 4.5.1

www.ediciones-eni.com

Ediciones ENI

6/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

1. Bases de ADO.NET

319

1.1 El modo conectado


1.1.1 La conexin
1.1.2 Los comandos
1.1.3 El DataReader
1.1.4 Los parmetros
1.1.5 Las transacciones
1.2 Las bases de datos SQL Server
1.2.1 Las versiones de SQL Server
1.2.2 Creacin de bases de datos
1.2.3 Creacin de tablas
1.2.4 Las vistas
1.2.5 Los procedimientos almacenados
1.3 Hacer transparente el acceso a las bases de datos
1.3.1 El modo desconectado
1.3.2 DataAdapter y TableAdapter
1.3.3 El mapping objeto relacional y los frameworks especializados
1.3.4 Las fbricas ADO.NET
2. Acceso a los datos mediante proveedores
2.1 Introduccin al desarrollo por proveedores
2.1.1 Controles origen de datos en modo proveedor
2.1.2 Controles de presentacin de datos
2.2 Los orgenes de datos SqlDataSource y AccessDataSource
2.2.1 Consultas de seleccin
2.2.2 Consultas de actualizacin
2.2.3 Parmetros
2.2.4 Cach
2.3 El proveedor ObjectDataSource
2.3.1 Principio
2.3.2 Implementacin
2.3.3 Parmetros de creacin
2.3.4 Gestin de la cach
2.3.5 Una versin avanzada

www.ediciones-eni.com

Ediciones ENI

319
320
326
328
331
332
336
336
337
340
341
342
343
344
346
353
353
357
357
359
359
360
360
363
364
367
368
368
369
373
374
374

7/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

2.4 El proveedor XmlDataSource


2.5 LinqDataSource
2.5.1 Un DAO para LinqDataSource
2.5.2 El contexto de datos dbml
2.5.3 Los eventos de LinqDataSource
2.6 EntityDataSource
2.6.1 El framework Entity
2.6.2 Crear el modelo conceptual
2.6.3 Consultas con LINQ to Entities
2.6.4 Actualizar el componente EntityDataSource
3. Componentes grficos de presentacin de datos
3.1 El componente GridView
3.1.1 Presentacin tabular de datos
3.1.2 Operaciones de seleccin y de navegacin
3.1.3 Claves y operaciones de actualizacin
3.1.4 Formateo y ordenacin
3.1.5 Columnas plantilla
3.1.6 Enlace bidireccional
3.1.7 Gestionar los enlaces
3.2 El componente DetailsView
3.2.1 Presentacin de DetailsView
3.2.2 Los eventos
3.2.3 El componente FormView
4. Crear informes con Reporting Services
4.1 Crear un informe
4.2 El componente de visualizacin
4.3 Parmetros

381
385
385
387
391
392
392
394
399
401
403
403
404
407
409
410
412
413
414
419
419
419
420
421
421
423
424

Gestin del estado


1. Los distintos medios para mantener el estado
1.1 Campos ocultos

www.ediciones-eni.com

429
429

Ediciones ENI

8/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

1.2 El ViewState
1.2.1 Usar el ViewState en un Web Form
1.2.2 Controlar la aplicacin del ViewState
1.3 Cadena de consulta (Query String) y URI
1.4 Las cookies
2. Las sesiones

435

2.1 Uso del objeto Session


2.1.1 Memorizacin y bsqueda de un objeto
2.1.2 Inicializacin del objeto Session
2.1.3 Securizacin del testigo de sesin
2.2 Sesiones sin cookie y tiempo de abandono de sesin
2.2.1 Sesiones sin cookie
2.2.2 Timeout
2.3 Servicios de conservacin de datos en sesin
2.3.1 El proceso en memoria InProc
2.3.2 El servicio Windows ASP.NET State Service
2.3.3 El servicio SQL Server
2.3.4 Servicios personalizados
3. Los objetos Application y Cache

435
436
436
437
437
437
438
438
438
440
441
442
442

3.1 El objeto Application


3.1.1 Uso
3.1.2 Bloqueo
3.2 La cach de datos de aplicacin Cache
3.2.1 Las dependencias temporales
3.2.2 El callback
3.2.3 Dependencias de archivos
3.2.4 Dependencias SQL con SQL Server
3.3 La cach HTML
3.3.1 Cach de salida
3.3.2 Fragmentos de pginas en cach
3.3.3 Sustituciones
3.3.4 Perfiles de cach

www.ediciones-eni.com

430
431
432
433
434

Ediciones ENI

442
443
443
444
444
446
447
448
454
454
456
457
458

9/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

Personalizacin y securizacin
1. Securizacin de los sitios ASP.NET

459

1.1 Modelo de securizacin del sitio


1.1.1 Objetos de seguridad
1.1.2 Autentificacin
1.1.3 Autorizacin
1.2 Securizacin en modo Windows
1.2.1 Activacin del modo de autentificacin
1.2.2 Configuracin de IIS
1.2.3 Autorizacin
1.3 Securizacin en modo Forms
1.3.1 Activacin del modo Forms y creacin de una pgina de conexin
1.3.2 Asignacin de roles
1.3.3 El modo Forms sin cookie
1.3.4 Autorizacin
1.4 El proveedor MemberShip
1.4.1 Funcionamiento del proveedor
1.4.2 Utilizar AspNetSqlMembershipProvider
1.5 Securizacin de cuentas de usuario individuales
1.6 La carpeta Account
1.7 La base de datos local de usuarios
1.8 Configurar una base de datos externa
1.9 El proveedor de roles
1.9.1 AspNetSqlRoleProvider
1.9.2 WindowsRoleTokenProvider
1.10 Los controles integrados
2. Presentacin personalizada

492

2.1 Perfiles de usuario


2.1.1 Formacin del perfil
2.1.2 Uso del perfil
2.1.3 Agrupacin y tipos complejos
2.2 Navegacin dentro del sitio
2.2.1 El archivo de definicin del sitio

www.ediciones-eni.com

459
459
460
462
463
463
463
464
466
466
469
471
471
471
472
474
477
479
481
484
489
489
490
490

Ediciones ENI

492
492
493
494
496
496

10/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

2.2.2 El proveedor SitemapProvider, la API Sitemap y el SitemapDataSource


2.2.3 Controles asociados a la navegacin
2.2.4 Filtrar la representacin en funcin del usuario
2.3 Internacionalizacin
2.3.1 Recursos globales
2.3.2 Recursos locales
2.3.3 El componente Localize
2.3.4 Localizacin de las validaciones
3. Los WebParts

497
498
498
500
500
502
503
504
505

3.1 Del sitio Web al portal


3.2 Crear un portal
3.2.1 El gestor WebPartManager
3.2.2 Las zonas WebPartZone
3.2.3 Los elementos WebPart
3.3 Los controles de catlogo CatalogZone y PageCatalogPart
3.3.1 El catlogo de zonas
3.3.2 Men para cambiar de modo
3.3.3 Dar nombre a los elementos
3.3.4 Los editores
3.4 Crear elementos personalizados
3.4.1 Crear un WebPart a partir de un componente de usuario
3.4.2 Crear un WebPart personalizado
3.4.3 Conectar los elementos

505
505
506
506
508
509
509
511
512
512
514
514
515
518

Los servicios Web WCF y REST


1. Los servicios Web WCF

523

1.1 El dialecto comn SOAP


1.2 Crear un servicio Web WCF
1.2.1 Implementacin del servicio
1.2.2 Prueba del servicio
1.3 Consumir un servicio Web
1.3.1 Generacin del proxy

www.ediciones-eni.com

Ediciones ENI

524
526
526
530
531
531

11/12

ASP.NET en C# con Visual Studio 2013


Diseo y desarrollo de aplicaciones Web

1.3.2 Llamada sncrona


1.3.3 Llamada asncrona

534
535

2. Los servicios Web REST

538

2.1 Implementacin de un servicio REST


2.2 Utilizacin de un servicio REST

539
540

Configuracin, despliegue y administracin


1. Configuracin

543

1.1 Herencia en la configuracin


1.2 Configuracin de pruebas y de produccin
1.2.1 El administrador de configuracin de Visual Studio
1.2.2 Varios archivos de configuracin Web.config
1.2.3 Las pginas de error del archivo Web.config
2. Despliegue de aplicaciones ASP.NET

543
544
545
546
547
547

2.1 Despliegue manual


2.1.1 Creacin de una carpeta virtual
2.1.2 Seleccin de archivos que se quiere copiar
2.1.3 La pgina por defecto
2.2 Despliegue mediante un sistema de copia
3. Supervisin de aplicaciones ASP.NET

547
547
549
550
551
552

3.1 La infraestructura de supervision Health Monitoring


3.1.1 La jerarqua de eventos web
3.1.2 La jerarqua de los proveedores
3.2 Implementacin en ASP.NET
3.2.1 Declarar eventos
3.2.2 Declarar proveedores de escucha
3.2.3 Agregar reglas de suscripcin

552
553
553
554
554
554
555

ndice

557

www.ediciones-eni.com

Ediciones ENI

12/12

You might also like