Documentos de Académico
Documentos de Profesional
Documentos de Cultura
to
Desarrollo
de aplicaciones web
con ASP .NET 4.0
Eje
mp
lo
de
Pgina | 1
Sipnosis
tex
to
Este texto se encuentra dedicado a la nueva versin de ASP .NET que ofrece Microsoft dentro de su entorno .NET Framework 4.0. Se abordan diversos temas relacionados con el desarrollo de aplicaciones Web basadas en ASP .NET 4.0
como pueden ser: los tipos de controles Web que se incluyen en esta versin (de inicio de sesin, de navegacin, de acceso a datos, etc.), el servicio gestor de roles, tratamiento de errores, depuracin y trazas, etc. Se requiere conocer los fundamentos de Internet/Intranet, estar familiarizado con la navegacin por la web, conocer HTML y conocer el sistema
operativo Windows a nivel de usuario, as como algunos conocimientos de programacin orientada a objetos.
Los lenguajes de programacin utilizados a lo largo del texto son Visual Basic .NET y C#.
de
lo
Eje
mp
Pgina | 2
tex
to
Luarna
ngel Esteban y ngel M. Rayo - Alhambra Eidos
De esta edicin: 2011, Luarna Ediciones, S.L.
Eje
mp
lo
de
www.luarna.com
Cualquier forma de reproduccin, distribucin, comunicacin pblica o transformacin de esta obra solo puede ser realizada con la autorizacin de sus titulares, salvo excepcin prevista por la ley. Dirjase a CEDRO (Centro Espaol de Derechos Reprogrficos, www.cedro.org) si necesita fotocopiar, escanear o hacer copias digitales de algn fragmento de esta
obra.
Pgina | 3
to
tex
de
lo
Eje
mp
Pgina | 4
to
Indice
de
tex
INTRODUCCIN ............................................................................................................................................................................... 15
LENGUAJES DE PROGRAMACIN .......................................................................................................................................................... 16
RECORRIDO POR LAS DISTINTAS VERSIONES DE ASP .................................................................................................................................. 16
NOVEDADES DE ASP .NET 4.0 ........................................................................................................................................................... 18
Nuevos controles de servidor .................................................................................................................................................. 18
Master Pages ......................................................................................................................................................................... 20
Temas y Skins ......................................................................................................................................................................... 20
Personalizacin....................................................................................................................................................................... 20
Internacionalizacin ............................................................................................................................................................... 20
Nuevo modelo de separacin de cdigo .................................................................................................................................. 21
PostBack entre distintas pginas............................................................................................................................................. 22
Nuevos eventos de las pginas ASPX ....................................................................................................................................... 22
Soporte para manejar el foco de la pgina .............................................................................................................................. 23
Nuevas caractersticas del cdigo de cliente ............................................................................................................................ 23
Directorios de una aplicacin ASP .NET ................................................................................................................................... 24
Nueva sintaxis ........................................................................................................................................................................ 25
Nuevas directivas de las pginas ASPX .................................................................................................................................... 25
Distribucin de la aplicacin ................................................................................................................................................... 26
Visual Studio 2010 .................................................................................................................................................................. 26
Precompilacin de pginas ..................................................................................................................................................... 27
Mejora del ViewState ............................................................................................................................................................. 27
API de configuracin ............................................................................................................................................................... 28
Consola MMC de administracin............................................................................................................................................. 28
Soporte para 64 bits ............................................................................................................................................................... 29
MATERIAL NECESARIO ...................................................................................................................................................................... 29
2. PRIMEROS PASOS CON ASP .NET 4.0 .......................................................................................................................................... 31
mp
lo
INTRODUCCIN ............................................................................................................................................................................... 31
EL ENTORNO DE TRABAJO .................................................................................................................................................................. 31
CREACIN DE UNA APLICACIN WEB CON VS 2010 ................................................................................................................................. 32
MODELO DE SEPARACIN DE CDIGO ................................................................................................................................................... 36
CREACIN DE NUESTRA PRIMERA PGINA ASP .NET 4.0 ........................................................................................................................... 38
CASO PRCTICO .............................................................................................................................................................................. 41
Planteamiento ........................................................................................................................................................................ 41
3. ELEMENTOS COMUNES DEL DESARROLLO DE APLICACIONES WEB CON ASP .NET 4.0 ................................................................ 42
Eje
INTRODUCCIN ............................................................................................................................................................................... 42
SINTAXIS BSICA DE ASP .NET ........................................................................................................................................................... 42
WEB FORMS .................................................................................................................................................................................. 45
CONTROLES HTML Y CONTROLES WEB DE SERVIDOR ................................................................................................................................ 46
EVENTOS DE UNA PGINA ASPX ......................................................................................................................................................... 49
SEPARACIN DE CDIGO ................................................................................................................................................................... 53
DIRECTIVAS DE LAS PGINAS ASPX ...................................................................................................................................................... 55
EVENTOS DE LOS CONTROLES WEB DE SERVIDOR ..................................................................................................................................... 56
CONFIGURACIN DE LAS APLICACIONES ASP .NET ................................................................................................................................... 62
CASO PRCTICO: PLANTEAMIENTO ....................................................................................................................................................... 63
Pgina | 5
tex
to
HTMLHEAD ................................................................................................................................................................................... 70
HTMLTITLE .................................................................................................................................................................................... 71
HTMLMETA ................................................................................................................................................................................... 71
HTMLLINK ..................................................................................................................................................................................... 71
HTMLIMAGE .................................................................................................................................................................................. 72
HTMLINPUTBUTTON ........................................................................................................................................................................ 73
HTMLINPUTSUBMIT, HTMLINPUTRESET ................................................................................................................................................ 73
HTMLINPUTCHECKBOX ..................................................................................................................................................................... 73
HTMLINPUTFILE .............................................................................................................................................................................. 73
HTMLINPUTHIDDEN ......................................................................................................................................................................... 73
HTMLINPUTIMAGE .......................................................................................................................................................................... 74
HTMLINPUTRADIOBUTTON ................................................................................................................................................................ 75
HTMLINPUTTEXT ............................................................................................................................................................................. 75
HTMLSELECT .................................................................................................................................................................................. 75
HTMLTABLE ................................................................................................................................................................................... 75
HTMLTABLEROW ............................................................................................................................................................................ 77
HTMLTABLECELL ............................................................................................................................................................................. 77
HTMLTEXTAREA ............................................................................................................................................................................. 77
CORRESPONDENCIA ENTRE CONTROLES HTML Y ETIQUETAS HTML ............................................................................................................. 77
CASO PRCTICO .............................................................................................................................................................................. 78
Planteamiento ........................................................................................................................................................................ 78
5.CONTROLES WEB ESTNDAR I ..................................................................................................................................................... 79
mp
lo
de
Eje
Pgina | 6
to
tex
de
lo
mp
Eje
Pgina | 7
to
tex
de
lo
mp
Eje
Pgina | 8
to
tex
de
lo
mp
Eje
Pgina | 9
to
tex
de
mp
lo
Eje
Pgina | 10
31.
tex
to
de
lo
mp
Eje
Pgina | 11
to
de
tex
mp
lo
Eje
Pgina | 12
to
tex
lo
de
Eje
mp
Pgina | 13
to
tex
Eje
mp
lo
de
Pgina | 14
to
tex
ASP NET 2.0 es la tecnologa para el desarrollo de aplicaciones Web que ponemos encontrar en la nueva versin que
ofrece Microsoft de su plataforma de desarrollo Microsoft .NET Framework 2.0. Este texto est pensado tanto para aquellos lectores que ya conocen ASP .NET 1.x, u otra versin previa (ASP 1.0/2.0/3.0), como para los que no conocen nada
del entorno de desarrollo de las pginas activas de servidor de Microsoft.
Nuestro objetivo va a ser centrarnos en la tecnologa ASP .NET, aunque comentaremos brevemente, y cuando sea necesario, algunos conceptos generales de la plataforma .NET (.NET Framework), ya que no debemos olvidar que es la plataforma sobre la que se van a ejecutar las aplicaciones Web desarrolladas con pginas ASP .NET, es decir, las pginas ASP
.NET no se van a ejecutar directamente sobre un sistema operativo determinado, sino que lo van a hacer sobre la plataforma, denominada .NET Framework, que ofrece Microsoft.
de
La plataforma .NET ofrece una serie de herramientas y tecnologas necesarias para construir y desarrollar aplicaciones
Web, as pues, las pginas ASP .NET se van a ejecutar dentro del entorno de ejecucin que nos facilita el .NET Framework. Podramos decir que ASP .NET es una parte de la plataforma .NET, y es esta parte la que se va a tratar en el presente texto.
Para aquellos lectores que no conozcan la tecnologa de desarrollo de las pginas ASP en cualquiera de sus versiones, voy
a realizar una definicin muy sencilla de lo que consiste la filosofa de la programacin de aplicaciones Web con pginas
ASP o ASPX.
lo
La filosofa de ASP .NET resulta muy sencilla, en pocas palabras se puede definir de la siguiente forma: las pginas ASP
.NET, tambin llamadas pginas activas, son pginas que contienen cdigo HTML, script de cliente y un cdigo que se
ejecuta en el servidor, dando como resultado cdigo HTML. Por lo tanto al cargar una pgina ASP .NET en nuestro navegador, en realidad no estamos cargando la pgina ASP .NET como tal, sino el resultado de la ejecucin de la pgina, es
decir la salida de la pgina ASP .NET, y como se ha apuntado anteriormente se trata de cdigo HTML. Es decir, son
pginas que se ejecutan en el servidor enviando como resultado al cliente cdigo HTML.
mp
El anterior prrafo est extrado completamente de un antiguo texto dedicado a ASP 3.0, el titulado Programacin para
aplicaciones para Internet con ASP 3.0, y es perfectamente aplicable a ASP .NET 4.0, pero este entorno de desarrollo de
aplicaciones Web, va ms all presentando un completo entorno mucho ms elaborado y completo, con lo que la afirmacin de prrafo anterior se quedara muy corta, ya que nicamente define uno de los aspectos de las pginas ASP .NET.
De forma ms genrica, y acertada, podemos definir ASP .NET como el entorno de desarrollo incluido en la plataforma
.NET de Microsoft, que nos permite desarrollar completas aplicaciones Web que se ejecutarn sobre el entorno ofrecido
por el .NET Framework. A lo largo de este texto iremos descubriendo paso a paso las distintas posibilidades (que son
bastante amplias) que nos ofrece ASP .NET, apoyndonos siempre en el nuevo entorno de desarrollo que nos ofrece de
Microsoft, Visual Studio 2010.
Una vez realizada una definicin ms o menos de lo que son las pginas ASP .NET volvamos a tratar sobre la nueva versin de ASP .NET.
Eje
Esta nueva versin de ASP .NET no ofrece unos cambios tan profundos como supuso el cambio de ASP 3.0 a ASP .NET
1.0, esta nueva versin de las pginas ASPX (as se denominan tambin a las pginas ASP .NET, utilizando su extensin),
es una evolucin lgica de ASP .NET 1.x (utilizamos 1.x para referirnos a las dos versiones anteriores de ASP .NET la
versin 1.0 y la 1.1)
Por lo tanto ASP .NET 4.0 es la nueva versin que ofrece el .NET Framework para el desarrollo de aplicaciones Web, ya
sean basadas en Internet, Intranet o Extranet. Como ya hemos adelantado, Microsoft tambin ofrece una nueva herramienta integral de desarrollo, Visual Studio 2010. Ser con esta herramienta con la que desarrollaremos nuestras aplicaciones
Web y por la tanto la comentaremos tambin en este texto. Como curiosidad comentar al lector que la nueva versin del
Pgina | 15
.NET Framework de Microsoft recibi el nombre en clave (code-name) de Whidbey y la versin 2.0 de ASP .NET llego a
denominarse ASP .NET Whidbey.
to
No veremos Visual Studio 2010 de forma ntegra, slo veremos la parte que nos interesa y que nos afecta a la hora de
desarrollar aplicaciones Web basadas en ASP .NET 4.0. Esta parte de Visual Studio 2010 (VS 2010) se denomina Microsoft Visual Web Developer 2005. Esta nueva versin de Visual Studio nos ofrece un entorno de desarrollo muy cmodo
para crear nuestras aplicaciones Web a travs de ayudas y asistentes.
tex
Por lo tanto debido a todo lo anterior recomiendo al lector que para el correcto seguimiento del texto y de los ejemplos
que en el aparecen, instale en su equipo Visual Studio 2010, ya que esta ser nuestra herramienta de trabajo. A lo largo
del texto, segn sea conveniente, se comentar el uso de Visual Studio 2010 para tareas concretas.
En este captulo, adems de realizar una introduccin a ASP .NET 4.0. Si el lector no comprende alguno de los conceptos
que vamos a adelantar no debe preocuparse, ya que ms adelante, a lo largo del texto, se vern con mayor detalle.
Lenguajes de programacin
de
ASP .NET 4.0 no es un lenguaje de programacin, sino que es un entorno de programacin o tecnologa de desarrollo,
pero no es un lenguaje. De hecho ASP .NET soporta distintos lenguajes, en el presente texto vamos a utilizar los lenguajes C# (CSharp) y Visual Basic .NET, ya que son los lenguajes ms populares entre todos los que soportan las pginas
ASP .NET, y tambin son los ms utilizados del .NET Framework.
El cdigo intermedio es una caracterstica comn que poseen todas las tecnologas englobadas en la estrategia .NET de
Microsoft, a la que lgicamente pertenece ASP .NET. Las pginas ASP .NET cuando reciben la primera peticin se compilan automticamente a un lenguaje intermedio que es conocido como Common Language Runtime (CLR), es decir, es
un lenguaje comn al que compilan todos los lenguajes que utilicemos en nuestras pginas ASP .NET, generando el mismo cdigo, ya sea Visual Basic .NET, C# o JScript. Gracias a esta caracterstica podemos obtener grandes ventajas en lo
que a rendimiento en tiempo de ejecucin se refiere, ya que la compilacin de las pginas slo se produce en la primera
peticin que se realiza sobre la pgina, o bien cuando el cdigo fuente de la misma se ha modificado y necesita por lo
tanto actualizarse, adems el resultado de esta compilacin permanece en cach para poder ser reutilizada.
lo
Los ejemplos de cdigo fuente que se mostraran en el texto se ofrecern tanto en el lenguaje de programacin C# como en
el lenguaje VB .NET. Suponemos que el lector conoce la sintaxis de alguno de estos dos lenguajes, ya que abordar un
lenguaje de programacin queda fuera de los objetivos de este texto, que como sabemos todos trata sobre ASP .NET 4.0.
mp
Las nuevas versiones de estos lenguajes que podemos encontrar dentro del .NET Framework 2.0 se denominan Visual
Basic 2005 y C# 2.0.
Eje
La primera versin de las pginas activas (ASP 1.0), se incorpor como un aadido o ampliacin al servidor Web del
sistema operativo Microsoft Windows NT Server 4.0 llamado Internet Information Server 3.0 (IIS 3.0). Este servidor
Web era bastante interesante pero todava era demasiado rudimentario y presenta limitaciones y problemas.
La primera versin de ASP era bastante interesante ya que se pasaba de la complejidad de los CGIs (Common Gateway
Interface) a la sencillez de las pginas activas. ASP 1.0 supuso el inicio del desarrollo de aplicaciones Web con productos
basados en tecnologa Microsoft.
La versin 2.0 de Active Server Pages la encontramos en el servidor Web de Microsoft Internet Information Server 4 (IIS
4) y en el servidor Personal Web Server 4 (PWS 4). Ambos servidores los podemos instalar desde la extensin del sistema
operativo de Windows NT denominada Windows NT 4.0 Option Pack, o ms comnmente Option Pack. Esta extensin
del sistema operativo no slo es aplicable a Windows NT, sino que tambin la podemos utilizar para Windows 95/98.
Pgina | 16
Se debe sealar que el servidor IIS 4 es el servidor Web para plataformas Windows NT Server 4.0, y el servidor Personal
Web Server 4.0 es el servidor Web para plataformas Windows 95/98 y Windows NT Workstation 4.0.
to
IIS 4 adems de ofrecer la nueva versin de la tecnologa ASP, permite configurar y administrar de forma sencilla nuestras aplicaciones ASP. Adems la figura de la aplicacin ASP se encuentra mucho ms clara que en la versin 1.0 de las
pginas ASP, el servidor Web nos indicar claramente el alcance de una aplicacin ASP determinada.
tex
ASP 2.0 es una clara y necesaria evolucin de ASP 1.0 incorporando la posibilidad de realizar pginas ASP transaccionales, aadiendo para ello un nuevo objeto integrado denominado ObjectContext (objeto de contexto). ASP 2.0 ofrece
un entorno ms robusto y potente que la versin anterior para el desarrollo de aplicaciones Web.
Ms tarde apareci ASP 3.0. Para poder utilizar ASP 3.0 tenemos que disponer de cualquiera de las versiones del sistema
operativo Windows 2000 (Professional, Server y Advanced Server). En este caso no se trata nicamente de una nueva
versin del servidor Web sino tambin de una nueva versin del sistema operativo Windows.
ASP 3.0 se encuentra disponible dentro de Windows 2000 en cualquiera de sus versiones (Professional, Server, Advanced
Server). Dentro de Windows 2000 encontramos el componente Internet Information Services o Internet Information Server, que como todos los lectores sospechan es la nueva versin del servidor Web de Microsoft Internet Information Server. Al instalar Internet Information Services 5.0 (IIS 5.0) dotamos a nuestro servidor de todas las funcionalidades de un
potente servidor Web, y dentro de estas funcionalidades se encuentra ASP 3.0.
de
ASP 3.0 podemos decir que es la evolucin lgica de ASP 2.0, no supone ningn cambio radical, ofrece una serie de mejoras y novedades. Se aade un nuevo objeto integrado llamado ASPError, este nuevo objeto es utilizado para el tratamiento de errores.
Y por fin llegamos a la aparicin del .NET Framework de Microsoft, que va a contener una nueva versin de ASP, ASP
.NET 1.0, en este caso los cambios respecto a ASP 3.0 si que son notables, tanto que en muchos casos podemos considerar que se parecen en poco, ni siquiera podramos considerar que se trata de ASP 4.0, ya que los cambios van ms all.
ASP .NET plantea una nueva forma de desarrollar aplicaciones Web dentro del entorno ofrecido por el .NET Framework.
En resumen, una nueva forma de programar aplicaciones Web.
lo
Con ASP .NET 1.0 aparece la herramienta de desarrollo Visual Studio 2002 que contiene la versin del 1.0 .NET Framework.
mp
ASP .NET es completamente compatible con ASP, podemos tener aplicaciones Web basadas en ASP y ASP .NET funcionando en el mismo servidor Web, que ser Internet Information Server 5.0, las pginas ASP tienen la extensin .ASP
y son procesadas por la DLL ASP.DLL y sin embargo las pginas ASP .NET poseen la extensin .ASPX y son procesadas por el entorno de ejecucin .NET Framework, que las transforma en el cdigo intermedio, representado en este caso
por la DLL ASPNET_ISAPI.DLL.
Como curiosidad comentar a los lectores que en las primeros pasos de la plataforma .NET (beta 1 y versiones preliminares previas) ASP .NET se denominaba ASP+ y la propia plataforma posea la denominacin de NGWS (New Generation
Windows Services, Nueva Generacin de Servicios de Windows).
Eje
Despus apareci la versin 1.1 del .NET Framework y con el la nueva versin de las pginas ASPX, ASP .NET 1.1, que
como ocurra con ASP 2.0 y ASP 3.0, esta nueva versin incluye leves mejoras y cambios. El Framework 1.1 aparece ya
dentro del sistema operativo Windows 2003 Server y se instala como una parte perfectamente integrada. Y dentro de este
nuevo sistema operativo tenemos el servidor Web IIS 6.0, que va a ser el encargado de albergar las aplicaciones Web
basadas en ASP .NET.
Al igual que suceda en la versin anterior, tambin aparece una nueva versin de la herramienta de desarrollo Visual
Studio, en este caso se trata de la versin 2003.
Es ya con la nueva versin del Framework, la 2.0, cuando aparece ASP .NET 4.0, y al igual que suceda con ASP 3.0 y
ASP .NET 1.0, es perfectamente compatible con las versiones 1.x de las pginas activas, lo nico que tenemos que hacer
es instalar la nueva versin del Framework.
Desde el propio servidor Web IIS 6.0, en el caso de Windows 2003 Server, y desde el servidor Web IIS 5.1, en el caso del
sistema operativo Windows XP Professional, a la hora de crear una aplicacin Web nos permite indicar a que versin del
Pgina | 17
de
tex
to
Framework pertenece: a la 1.1 o a la 2.0, que se corresponder con la versin de pginas ASPX. Esto lo podemos ver en
la siguiente figura.
Figura 1
Como se puede desprender de la figura anterior, en un mismo servidor Web pueden convivir sin problemas las dos versiones del Framework, la 1.1 y la 2.0, lo mismo sucede con las herramientas de desarrollo, en un mismo equipo puede
estar instalado Visual Studio 2003 y Visual Studio 2010 sin ningn tipo de problema ni incompatibilidad, incluso odramos tener instalado Visual Studio 6.0.
lo
Y para terminar con el siguiente apartado, como es de suponer tambin tenemos una nueva versin de la herramienta de
desarrollo Visual Studio, que es la que vamos a utilizar en este texto y que no es otra que la versin 2005.
mp
Como ya se ha adelantado los cambios en esta nueva versin de ASP no son tan dramticos como los que se dieron con el
cambio de versin de ASP 3.0 a ASP .NET 1.0, los lectores que conozcan ASP .NET 1.x lo tendrn bastante sencillo ya
que la forma de desarrollar las aplicaciones Web y su filosofa permanecen intactas, sin embargo nos encontraremos con
un gran nmero de mejoras y novedades.
Este apartado ser muy til para la audiencia conocedora de alguna versin previa de ASP .NET, ya que en un rpido
vistazo se adelantarn todas las novedades, mejoras y cambios que nos ofrece la nueva versin de ASP .NET. Y para los
lectores que no conozcan nada de ASP .NET les servir para empezar a ponerse en contacto con el desarrollo de aplicaciones Web y para ver algunas de las funcionalidades que nos ofrece ASP .NET y que sern tratadas en mayor detalle a lo
largo de los distintos captulos de este texto.
Eje
A travs de los distintos puntos de este apartado se van a comentar las novedades que aporta ASP .NET 4.0 respecto a la
versin 1.x, apoyndose en el nuevo entorno .NET Framework 2.0. Esta nueva versin de ASP .NET nos ofrece unas
potentes caractersticas a la hora de desarrollar aplicaciones Web, pasemos a ver las ms destacadas. El lector no debe
preocuparse si no entiende alguno de los conceptos que aqu se comentan, ya que los veremos ms adelante con mayor
profundidad, este apartado servir sobre todo a aquellos lectores que ya conozcan ASP .NET 1.x, para ver de un simple
vistazo las novedades ms destacables de ASP .NET 4.0
tex
to
Para ver la gran cantidad de controles que ASP .NET pone a nuestra disposicin nicamente tenemos que echar un vistazo al cuadro de herramientas de Visual Studio 2010, podemos ver que aparecen un gran nmero de ellos agrupados por
categoras segn su funcionalidad. En la siguiente figura podemos ver los grupos de controles de servidor que nos ofrece
ASP .NET 4.0 desde VS 2010.
Figura 2
de
No se trata nicamente de nuevos controles mejorados, sino que aparecen completas categoras de controles como pueden
ser los controles de inicio de sesin o los de navegacin (denominados por VS 2010 de exploracin). Vamos a comentar
brevemente las distintas categoras de nuevos controles de ASP .NET 4.0.
lo
El acceso a datos desde ASP .NET 4.0 ahora se puede realizar en unos pocos pasos de manera muy sencilla, sin la necesidad de escribir ni una slo lnea de cdigo haciendo uso nicamente de los nuevos controles de acceso a datos. Dentro de
estos controles hay dos grupos bien diferenciados, los que nos ofrecen la conexin con las fuentes de datos, denominados
controles de fuente u origen de datos (data source controls), como podra ser el control SqlDataSource, y los que nos
ofrecen un interfaz de usuario para representar grficamente los datos, denominados controles conectados a datos (data
bound controls), como puede ser el control GridView.
mp
En la versin 1.x de ASP .NET ya existan los controles de acceso a datos, en ASP .NET 4.0 aparecen nuevos controles,
pero ya exista esta categora. Una categora completamente nueva son los controles de navegacin. Los controles de navegacin ofrecen un interfaz de usuario que permite la navegacin a travs de las distintas pginas de un sitio Web, as
como la presentacin de la informacin de forma jerrquica. Un ejemplo de estos controles es el nuevo control SiteMapPath, que nos permite navegar entre pginas, y el control TreeView, que muestra la informacin de forma jerrquica, en estructura de rbol organizada en nodos, otro control de navegacin sera el control Menu, que nos permite
construir mens navegables.
Tambin aparece una nueva categora de controles llamada de inicio de sesin, estos controles nos van a ofrecer un interfaz y funcionalidad para realizar labores de autenticacin y autorizacin dentro de nuestro sitio Web. Dentro de este grupo
tenemos por ejemplo, el control Login que nos ofrece un interfaz grfico consistente en las cajas de texto y botones para
indicar un nombre de usuario y una contrasea, adems de toda la lgica para autenticar usuario es nuestra aplicacin
Web, y el control ChangePassword que nos provee de un formulario para realizar el cambio de contrasea, con toda la
lgica correspondiente que permitir realizar esta tarea de forma automtica.
Eje
El grupo de controles llamado Elementos Web tambin podemos encontrarlo por su nomenclatura en ingls, que suele ser
ms comn, se trata de los controles WebPart. Estos son unos controles de servidor bastante potentes que permiten al
usuario del sitio Web personalizar el aspecto y distribucin del mismo, estos controles son utilizados en aplicaciones Web
de tipo portal para que el usuario tenga una experiencia completamente personalizada del sitio Web. Por lo tanto el usuario podr modificar en tiempo de ejecucin las propiedades de los controles WebPart.
Dentro del grupo de controles estndar tambin aparecen nuevos controles de servidor, tan sencillos como puede ser el
control BulletedList, que representa una lista de elementos, el control HiddenField, para representar un campo
oculto de un formulario, y ms complejos como puede ser el control Wizard, que permite definir una serie de pasos en
Pgina | 19
forma de un asistente. En general los nuevos controles estndar que se han aadido a ASP .NET 4.0 nos van a permitir
ahorrarnos mucho trabajo debido a las funcionalidades que ofrecen.
to
Master Pages
tex
Si traducimos literalmente esta nueva caracterstica de ASP .NET 4.0 obtenemos la expresin de pginas maestras, y
eso mismo es lo que nos ofrece esta nueva funcionalidad, la posibilidad de crear plantillas para las pginas ASPX de
nuestra aplicacin Web. Un ejemplo claro sera la utilizacin de una Master Page para definir la cabecera de una sitio
Web. Las pginas maestras tendrn la extensin .MASTER. La traduccin oficial que se ha realizado del trmino Master Pages es el de pgina principal, traduccin muy poco feliz en mi opinin, por lo que las llamaremos pginas maestras
o simplemente pginas Master.
De esta forma podemos definir una pgina Master o maestra para que todas nuestras pginas tengan un aspecto similar y
coherente dentro de la aplicacin Web, con esto conseguimos, adems de mantener una coherencia y uniformidad en todo
el aspecto del sitio Web, un mantenimiento sencillo en lo que al aspecto y presentacin de un sitio Web se refiere, ya que
si necesitamos cambiar alguna caracterstica del sitio Web no tenemos que ir pgina a pgina, solo lo cambiaremos en la
pgina maestra.
Pero las Master Pages no solo nos ofrecen un aspecto uniforme para el sitio Web, tambin pueden contener cdigo, por lo
tanto tambin se pueden aadir funcionalidades comunes a toda la aplicacin Web. Por lo tanto podemos decir que tenemos un diseo, cdigo y contenido reutilizable.
de
Para aquellos lectores que ya conocan alguna versin anterior de ASP, comentar que las Master Pages nos van a ofrecer
una funcionalidad que anteriormente obtenamos utilizando otros mecanismos como pueden ser los ficheros include y los
controles de usuario de ASP .NET.
Temas y Skins
lo
Los temas y skins o tambin llamadas mscaras, es un mecanismo que ofrece ASP .NET para establecer un aspecto
comn a los distintos controles de los formularios de los que consta una aplicacin Web, los temas de ASP .NET los podemos asemejar a las hojas de estilo en cascada (hojas CSS), ya que en realidad son caractersticas del aspecto que se van
a aplicar a los controles Web. Un tema va a estar compuesto de uno o ms ficheros de mscara (tienen la extensin
.skin) y por las hojas de estilo e imgenes que se utilicen.
Los temas se encuentran en una carpeta especial de la aplicacin Web llamada App_Themes. Veremos a lo largo del
texto que adems de esta carpeta especial, las aplicaciones Web de ASP .NET van a tener otras carpetas especiales con
otra funcionalidad distinta.
mp
En un fichero de mscara se van a definir los valores de las propiedades de los controles a los que queremos que afecte la
mscara, as si queremos definir las propiedades que van a tener los controles Label de nuestras pginas ASPX, deberemos definir un control Label con los valores de las propiedades correspondientes dentro del fichero .skin.
Al igual que suceda con las Master Pages, los temas y skins mejoran el mantenimiento de una aplicacin Web, ya que
todos los estilos y aspecto de las pginas ASPX que forman parte de la aplicacin se encuentran centralizados.
Personalizacin
Eje
ASP .NET 4.0 ofrecen una serie de servicios de personalizacin (perfiles) que van a ayudar a que la experiencia del usuario en la aplicacin Web sea ms personalizada, permitindonos mantener las preferencias de los usuarios de nuestra aplicacin Web, basndose en un completo mecanismo de perfiles. Esto lo conseguiremos a travs de nuevo objeto denominado Profile que nos ofrece ASP .NET 4.0.
Internacionalizacin
En el rea de desarrollo de aplicaciones Web, debido a las caractersticas de las aplicaciones Web, podemos vernos alguna vez en la tarea de tener que disear una aplicacin que sea multilenguaje, de forma que en el servidor Web tengamos
una nica aplicacin ejecutndose y dependiendo de los clientes que accedan est en un idioma o en otro
ASP .NET 4.0 nos ofrece la caracterstica de internacionalizacin, lo que hace ms sencillo acometer una tarea de este
tipo. Para ello ASP .NET pone a nuestra disposicin los ficheros de recursos (.RESX), estos ficheros de recursos podrn
Pgina | 20
ser de dos tipos, locales y globales, lo primeros se utilizarn en una pgina ASPX concreta y los segundos sern accesibles por todas las pginas ASPX presentes en la aplicacin Web.
to
Existirn varios juegos de ficheros de recursos, uno por idioma que queramos utilizar en nuestra aplicacin Web, en estos
ficheros de recursos podemos definir todos los literales que aparecen en la aplicacin, y como ya se ha dicho existir un
fichero de recurso para cada idioma.
Aunque los ficheros de recursos ya existan en ASP.NET 1.x, no se encontraban tan integrados dentro de la herramienta
de desarrollo ni tampoco dentro de las pginas ASPX.
tex
Visual Studio 2010 nos ofrece la utilidad del editor de ficheros de recursos.
Tambin podremos detectar de manera automtica el idioma preferido que ha elegido el usuario en su navegador.
En versiones anteriores de ASP .NET 1.x ya se realizaba la separacin entre la lgica de presentacin y la lgica de negocio, haciendo uso del mecanismo que se denominaba Code-Behind. Mediante esta caracterstica todo el cdigo HTML y
ASP .NET que se corresponda con el interfaz de usuario se encontraba en la pgina ASPX a la que se le asociaba un
fichero de cdigo que era una clase que contena todo el cdigo para la lgica de negocio.
de
La filosofa de la separacin entre el cdigo de la lgica de negocio y de presentacin no ha variado, lo que cambia es la
forma de llevarlo a cabo. A la pgina ASPX tambin se le asocia un fichero de clase, pero en este caso se trata de una
clase parcial, aparece un nuevo modificador para las clases llamado partial. Una clase parcial permite dividir el cdigo
que define a la clase en varios ficheros. De esta forma el fichero de la clase que se asocia a la pgina ASPX contiene menos lneas de cdigo ya que se compila de forma conjunta con la propia pgina, y por lo tanto no se necesita declarar en la
clase los distintos controles que contiene la pgina ASPX. Aludiendo a esta caracterstica Microsoft indicaba que se reduca el nmero de filas de cdigo fuente en un 70%, con lo que el cdigo es ms legible y ms sencillo de mantener.
Las clases parciales en general son una nueva caracterstica que ofrece el .NET Framework en su versin 2.0.
lo
Respecto a la utilizacin de este modelo de separacin de cdigo se puede hacer la siguiente apreciacin: este modelo no
es obligatorio, aunque si recomendable, ya que la lgica de presentacin queda en la pgina ASPX y la lgica de negocio
(acceso a datos, tratamiento de eventos, funcionalidad, operaciones, etc.) queda en el fichero de la clase (con las extensiones .VB o .CS segn el lenguaje utilizado) que se ha asociado a la pgina ASP .NET. Esto permite que el cdigo sea ms
claro y ms sencillo de mantener, adems estas ventajas se reafirman con el nuevo modelo de separacin de cdigo, llamado por algunos autores Code-Beside en contraposicin al modelo de ofrecan las versiones 1.x de ASP .NET llamado
como ya sabemos Code-Behind.
Eje
mp
Este modelo de separacin de cdigo que hemos introducido en este apartado, y que ms delante retomaremos en mayor
detalle para mostrar ejemplos concretos de cdigo, ya hemos dicho que no es obligatorio, pero es el modelo de programacin de pginas ASPX que ofrece por defecto el entorno de desarrollo Visual Studio 2010, aunque al aadir una nueva
pgina ASPX nos permite seleccionar, mediante un check, si queremos hacer uso del modelo de separacin de cdigo o
no. Si desmarcamos esta casilla se emplear para la pgina ASP .NET el modelo de cdigo que encontramos en las antiguas versiones ASP hasta de la aparicin de la tecnologa .NET. Literalmente, tal como vemos en la imagen inferior en la
casilla aparece el texto Colocar el cdigo en un archivo independiente.
Pgina | 21
to
tex
Figura 3
de
Si la casilla anterior est seleccionada adems de aadirse el fichero .ASPX al proyecto de Visual Studio 2010, se aade
un segundo fichero llamado igual que la pgina ASP .NET pero con la extensin .ASPX.VB .ASPX.CS segn el
lenguaje utilizado, este ser el fichero de la clase de la pgina y que estar asociado a la misma.
Pero si desmarcamos la casilla al aadir una nueva pgina ASPX se utilizar otro modelo de cdigo, este modelo de cdigo se denomina cdigo en lnea (inline coding) y en este caso no existe separacin entre la lgica de presentacin y la de
negocio, todo el cdigo se encuentra en la pgina ASPX. Aunque VS 2010 soporta este estilo de codificacin, si desmarcamos la casilla de la imagen anterior, como ya hemos dicho es mejor no utilizarlo. Visual Studio 2010 para este modelo
de codificacin incluso ofrece la caracterstica de intellisense, ayuda inteligente que aparece cuando estamos escribiendo
cdigo para la pgina y nos indica las propiedades, mtodos, parmetros, etc., que podemos utilizar en una situacin determinada.
lo
Realizar un Post de una pgina ASPX significa que es enviada al servidor para su tratamiento, ser en este envo cuando
se traten los eventos correspondientes y se ejecute el cdigo de servidor que se encuentre asociado, adems se inicia el
ciclo de eventos de la pgina (Init, Load, PreRender, etc.). Y un PostBack es simplemente realizar un Post sobre la
misma pgina, es decir, reenviar la pgina al servidor.
mp
En las antiguas versiones de ASP (1.0/2.0/3.0), se poda realizar un post, es decir, enviar la pgina, sobre una pgina distinta a la actual, por lo tanto la pgina de destino poda obtener los datos del formulario que existan en la pgina de origen y realizar el tratamiento que proceda. En ASP .NET esto no es posible, los post/postback o envos de pgina se realizan siempre sobre la pgina actual, es decir, no hay posibilidad de enviar el formulario a una segunda pgina, siempre se
hace sobre la misma, recargndose.
Con ASP .NET 4.0 si que es posible realizar un PostBack sobre una segunda pgina, y desde esta segunda pgina ASPX
se puede tener acceso al formulario (Web Form) de la primera pgina. ASP .NET 4.0 nos ofrece la propiedad PostBack
Url para indicar la pgina ASPX a la que deseamos enviar el formulario, es decir, la pgina ASP .NET sobre la que realizaremos el Post, y mediante la propiedad PreviousPage de la clase Page tendremos acceso al formulario de la pgina de origen desde la pgina sobre la que se hace el PostBack o envo del formulario.
Eje
Las pginas ASP .NET tienen una serie de eventos que se producen dentro de un orden determinado en lo que se puede
definir como el ciclo de vida de una pgina ASPX, es decir, cada vez que se carga una pgina se ejecutarn siempre unos
eventos determinados. En la versin 2.0 de ASP .NET se incluyen seis nuevos eventos de este tipo.
Veamos brevemente cada uno de estos nuevos eventos por orden de ejecucin.
El primero de ellos es PreInit, que se ejecutar en el momento anterior al que la pgina es inicializada; luego nos encontramos con InitComplete que se ejecutar cuando se ha completado la inicializacin de la pgina a este evento le
Pgina | 22
to
sigue PreLoad, que indica el instante inmediatamente anterior al momento en el que la pgina se carga en memoria; el
siguiente es LoadComplete, que indica que la pgina se ha cargado completamente en memoria; ms adelante se ejecuta el evento PreRenderComplete, este se ejecutar justo en el momento anterior en el que la pgina se muestra en el
navegador Web.
tex
Y llegamos al ltimo evento en orden de ejecucin de los nuevos eventos del ciclo de vida de una pgina, este ltimo
evento se denomina SaveStateComplete, y se ejecuta cuando la pgina ha terminado de guardar toda la informacin
del ViewState, es decir, la informacin relativa al estado y valores de las propiedades de los controles de la pgina. El
concepto de ViewState lo volvemos a tratar un poco ms adelante.
Y si unimos estos nuevos eventos de la pgina, con los que ya existan en las versiones anteriores de ASP .NET, tenemos
el siguiente esquema de ejecucin de eventos del ciclo de vida de una pgina ASPX.
1. PreInit
2. Init
3. InitComplete
4. PreLoad
5. Load
7. PreRender
8. PreRenderComplete
9. SaveStateComplete
10. UnLoad
de
6. LoadComplete
lo
Se debe aclarar que estos no son todos los eventos que ejecuta una pgina ASPX, estos son solo los eventos que pertenecen a su ciclo de vida y que se ejecutan siempre, luego tenemos otros eventos que se lanzarn en situaciones muy particulares como pueden ser AbortTransaction o CommitTransaction, cuando estamos utilizando transacciones en
nuestra pgina, o bien el evento Error, que se lanzar cuando se produce un error dentro de la pgina ASPX. Todos los
eventos los veremos de forma completa cuando tratemos el objeto Page, este objeto es una clase del .NET Framework
que representa a la pgina ASPX actual.
mp
ASP .NET 4.0 ofrece una serie de caractersticas para poder manejar de forma conveniente y tener control sobre el foco
de los controles Web de nuestra pgina ASPX. El conjunto de facilidades que nos ofrece ASP .NET 4.0 para tratar el foco
dentro de las pginas ASP .NET se denomina API Focus. Este API nos permite controlar el foco sobre los controles de un
formulario Web, ya sea de forma declarativa o bien a travs del cdigo de servidor en tiempo de ejecucin.
As por ejemplo podemos establecer el foco sobre un control Web de servidor lanzando sobre l su mtodo Focus(). A
la hora de definir un formulario Web en la pgina ASPX podemos utilizar su atributo DefaultFocus para indicar el
control Web que poseer el foco al cargarse la pgina.
Eje
ASP .NET aporta una serie de mejoras a la hora de utilizar cdigo de cliente en las pginas ASPX. Una de las mejoras
ms interesantes es la de permitir ejecutar cdigo de servidor desde cdigo de cliente, es lo que se denomina Callbacks
desde el cliente.
Se permite realizar una llamada a un mtodo de cdigo de servidor desde cdigo de cliente (javascript) sin tener que realizar un PostBack de la pgina, es decir, sin tener que recargar la pgina, esta caracterstica se denomina tambin llamadas
fuera de banda.
Con un Callback de cdigo cliente se enva una peticin al servidor, sin recargar la pgina, y luego el navegador recibe la
respuesta, y en ese momento el cdigo cliente (javascript), mediante DHTML (Dynamic HTML) muestra la respuesta en
la pgina.
Pgina | 23
Esta caracterstica se basa en la capacidad del navegador Web de soportar llamadas fuera de banda a travs del protocolo
XMLHTTP. Con esto se consigue enviar una peticin simple sin tener que ir enviando y recibiendo la pgina completa.
to
Otras nuevas caractersticas son ms sencillas, como puede ser la posibilidad de indicar en el objeto Button mediante la
propiedad OnClientClick, el mtodo que se ejecutar del cdigo cliente cuando se produzca el evento Click del
botn o como puede ser atributo
tex
En ASP .NET se introducen una serie de nuevos directorios especiales, que tendrn un uso determinado dentro de las
aplicaciones ASP .NET. Esta no es una idea nueva, ya que en ASP .NET 1.x ya exista un directorio especial, era el directorio BIN, que era utilizado para contener los assemblies de los que haca uso la aplicacin ASP .NET, recordamos
que un assemblie (ensamblado) es una DLL de un componente compilado. Al aparecer estas nuevos directorios especiales, no quiere decir que el directorio BIN deje de utilizarse, este directorio podr seguir utilizndose en las aplicaciones
Web de ASP .NET 4.0.
mp
lo
de
Desde el propio entorno de desarrollo Visual Studio 2010 se ofrece soporte para la creacin de estos directorios de la
aplicacin Web. Si pulsamos con el botn derecho del ratn sobre la solucin dentro del explorador de soluciones de VS
2010 veremos que en le men contextual aparece el elemento Agregar carpeta ASP .NET, y si vamos a esta opcin de
men aparecen otras subopciones que se corresponden con los directorios que podemos crear, esto se puede apreciar en la
siguiente figura.
Figura 4
Vamos a pasar a comentar brevemente cada uno de los nuevos directorios que presenta ASP .NET para desarrollar aplicaciones ASP .NET
1. App_Code: la labor principal de esta carpeta es la de contener las clases de la aplicacin Web. Todas las clases
que contenga esta carpeta sern accesibles desde cualquier pgina ASPX de la solucin.
2. App_Data: esta carpeta va a contener los almacenes de datos utilizados por la aplicacin, podrn contener ficheros de SQL Server (.MDF), Access (.MDB), ficheros XML.
Eje
3. App_Themes: esta carpeta contendr los ficheros necesarios (ficheros .CSS y ficheros .SKIN) que forman parte de un tema. Existir un subdirectorio dentro de la carpeta App_Themes por cada uno de los temas definidos, y
estos temas se podrn aplicar a las pginas que forman parte de la aplicacin ASP .NET.
4. App_GlobalResources: aqu podremos encontrar los ficheros de recursos globales (.RESX). Recordamos
que estos ficheros nos permiten definir de forma global a la aplicacin los textos en un lenguaje determinado.
5. App_LocalResources: este directorio tiene la misma funcin que el anterior, pero en este caso albergar los
ficheros de recursos locales, es decir, aquellos a los que tendrn acceso nicamente las pginas determinadas de
forma local.
Pgina | 24
6. App_WebReferences: este es el nuevo nombre que recibe el directorio encargado de contener las referencias
a los servicios Web utilizados dentro de la aplicacin ASP .NET, en versiones anteriores de Visual Studio se denominaba Web References.
to
7. App_Browsers: esta carpeta contiene ficheros .BROWSER, estos ficheros son ficheros en formato XML que
contienen las caractersticas de los distintos navegadores Web, estos ficheros nos van a servir para identificar las
funciones que poseen los navegadores que hacen peticiones a nuestro sitio Web.
lo
de
tex
En la siguiente figura se muestra el aspecto que tendra una aplicacin ASP .NET, dentro del explorador de soluciones de
VS 2010, con una serie de carpetas ASP .NET definidas.
Figura 5
mp
Como sucede con casi todo lo comentado en este apartado, ms adelante retomaremos las carpetas ASP .NET y las utilizaremos segn sea conveniente.
Nueva sintaxis
ASP .NET 4.0 nos provee con una nueva sintaxis para calcular expresiones dentro de las pginas ASPX. Esta sintaxis
tiene el siguiente aspecto <%$
%> y se utiliza en diversos escenarios: para obtener cadenas de conexin definidas en el
fichero de configuracin Web.config, para obtener literales definidos en ficheros de recursos, para acceder a valores de
configuracin de la aplicacin y para obtener valores almacenados en perfiles.
Esta sintaxis la veremos a lo largo de los distintos ejemplos de cdigo dentro del texto segn sea necesaria. Esta sintaxis
se denomina Expression Builders.
Eje
Como consecuencia de algunas de las novedades vistas en los puntos anteriores, ASP .NET 4.0 ha tenido que incorporar
nuevas directivas a las pginas ASPX para poder implementar algunas de las nuevas caractersticas que ofrece.
As por ejemplo para definir los atributos especficos de una Master Page, ASP .NET 4.0 presenta la nueva directiva
Master. Esta directiva es muy similar a la directiva Page de las pginas ASPX, pero en este caso es especfica de las
Master Pages. Tambin en relacin con las Master Pages tenemos la directiva MasterType, esta directiva en contraposicin a la anterior es para utilizar en las pginas ASPX normales, y no en las maestras.
Pgina | 25
La directiva MasterType asocia un nombre de clase a una pgina maestra, de estar forma se consigue tener una referencia fuertemente tipada a la Master Page y as acceder a sus atributos o mtodos.
to
Distribucin de la aplicacin
Esta caracterstica, adems de ser nueva en ASP .NET 4.0, tambin se encuentra muy relacionada con VS 2010, ya que es
este entorno de desarrollo el que nos ofrece una utilidad para realizar la publicacin de un sitio Web. En ASP .NET 1.x la
nica forma de distribuir una aplicacin Web era copiando tal cual el directorio virtual en el que se encontraba, y situndolo en el servidor Web deseado, o bien utilizando un asistente de distribucin.
tex
Ahora desde VS 2010 podemos utilizar el asistente de publicacin del sitio Web para elegir la localizacin de la publicacin y tambin la forma en que se generar el sitio Web, si permite la actualizacin o no.
de
En la siguiente figura se puede ver el asistente de publicacin del sitio Web que nos ofrece Visual Studio 2010.
Figura 6
lo
Adems de esta herramienta, VS 2010 ofrece tambin la posibilidad de copiar un sitio Web como tal, sin precompilarlo
como en el caso de la utilidad de publicar sitio Web, mediante la utilidad Copiar sitio Web podemos conectarnos a un
sitio Web remoto y copiar nuestra aplicacin ASP .NET.
mp
Se ha incluido este apartado dentro de las novedades de ASP .NET 4.0 para dar relevancia a la nueva versin de esta
herramienta de desarrollo, ya que ofrece un gran nmero de ayudas para el desarrollo de una aplicacin Web con ASP
.NET. El mdulo de Visual Studio 2010 que nos permite desarrollar aplicaciones Web es el denominado Microsoft Visual
Web Developer.
Algunas de las ayudas y utilidades que nos ofrece VS 2010 ya las hemos comentado en anteriores puntos, y podemos
destacar las siguientes:
1. Copia de sitio Web.
Eje
7. Smart Tags, etiquetas inteligentes que nos permitirn configurar de manera rpida algunos controles Web.
8. Navegador de etiquetas, que nos permitir desplazarnos de forma muy sencilla en el cdigo HTML y ASP .NET
de una pgina ASPX. Tambin conoceremos en qu lugar de la pgina nos encontramos situados.
Pgina | 26
to
Debido a todas estas caractersticas, veremos ms tarde que se propone VS 2010 como material necesario para seguir el
texto
Precompilacin de pginas
tex
ASP .NET 4.0 ofrece una nueva herramienta que permite precompilar todas las pginas de una aplicacin Web antes de
ser distribuida, esta herramienta se llama aspnet_compiler.exe. Al precompilar una pgina ASPX obtenemos las
siguientes ventajas: la primera peticin de la pgina que se realice se ejecutar igual de rpido que cualquier otra y se
evitan que aparezcan errores de compilacin en el servidor Web de produccin.
Esta precompilacin tambin es llevada a cabo por la herramienta de publicacin de sitio Web de VS 2010 y que hemos
comentado en un punto anterior. Desde esta herramienta se nos brinda la posibilidad de indicar si deseamos que las pginas ASPX sean modificables en el servidor Web de destino o no (Permitir que este sitio precompilado se actualice). Si
indicamos que no queremos que sean modificables las pginas ASPX, protegeremos todo el cdigo fuente de nuestra
aplicacin Web, ya que las pginas ASPX carecern de contenido y se harn uso de una serie de DLLs en su lugar. De
esta forma no se podr modificar nada, ni siquiera la lgica de presentacin, de hecho si abrimos en el servidor en el que
se ha publicado el sitio Web, alguna de las pginas ASPX para ver su cdigo veremos el siguiente mensaje de advertencia.
de
ste es un archivo marcador generado por la herramienta de precompilacin y que no se debera eliminar
Cdigo fuente 1
Por lo tanto otra ventaja que obtenemos al precompilar nuestra aplicacin Web de esta manera es que el cdigo fuente de
las pginas y de las clases no queda expuesto.
lo
El ViewState es el mecanismo que ofrece ASP .NET (ya en su primera versin 1.0) para mantener el estado de los controles de la pgina entre distintas llamadas a la pgina, es decir, en los mltiples PostBacks se mantienen de forma automtica los valores y propiedades de los controles Web presentes en la pginas ASPX, sin tener que escribir el desarrollador
una sola lnea de cdigo.
Es necesario este mecanismo para mantener el estado de los controles, ya que el entorno en el que se ejecutan las pginas
ASPX es el protocolo HTTP, y este es un protocolo sin estado, las distintas llamadas que se realizan a un servidor Web
son siempre independientes entre s para el servidor, por lo tanto no mantiene el estado.
mp
La forma que tiene ASP .NET de implementar este mecanismo es utilizar un campo oculto (hidden) dentro del formulario
Web. Este campo oculto es enviado junto con el resto de campos del formulario cuando el usuario realizar un envo del
formulario al servidor, y ASP .NET es capaz de interpretar la informacin almacenada en el campo oculto para utilizarla a
la hora de devolver de nuevo la pgina al navegador y construirla teniendo en cuenta el estado anterior en el que se encontraba.
Para ver el aspecto que tiene el ViewState no tenemos nada ms que cargar en nuestro navegador una pgina ASPX y
seleccionar la opcin de ver el cdigo fuente, veremos algo similar a lo siguiente, el tamao de la informacin incluida en
este campo variar segn el nmero de campos que existan en el formulario de la pgina.
Eje
Cdigo fuente 2
El problema que tiene el ViewState es que el tamao de la informacin que se almacena en el campo oculto puede crecer
bastante, haciendo que la carga de la pgina ASPX sea ms lenta. Pero en la versin 2.0 de ASP .NET se ha optimizado el
mecanismo de ViewState de tal manera que ha llegado a reducirse en un 50% el tamao de la informacin generada respecto a la versin 1.1 de ASP .NET. Si queremos beneficiarnos de esta mejora en el rendimiento de ASP .NET 4.0 nicamente tenemos que recompilar nuestra aplicacin ASP .NET 1.x en Visual Studio 2010.
Pgina | 27
API de configuracin
to
En esta nueva versin de ASP .NET se nos provee con un nuevo API para la manipulacin de los ficheros de configuracin de ASP .NET, es decir, los ficheros Web.config y machine.config, esto nos permite escribir y desarrollar
nuestra propias aplicaciones para acceder a la configuracin de las aplicaciones ASP .NET.
de
tex
Un ejemplo prctico de utilizacin de este API de configuracin lo tenemos si desde Visual Studio 2010 ejecutamos la
opcin de men Sitio Web|Configuracin de ASP .NET, esta accin lanzar la ejecucin de una aplicacin Web que hace
la funcin de herramienta de administracin de la aplicacin Web que en ese momento tenemos cargada en VS 2010, en
la siguiente figura se puede ver el aspecto de la misma.
Figura 7
lo
Desde esta herramienta de administracin podemos realizar muchas labores de configuracin, que trataremos en detalle
en el captulo correspondiente.
mp
En el apartado anterior hicimos referencia la herramienta de administracin basada en Web que nos ofreca VS 2010, esta
no es la nica forma de administrar nuestra aplicacin Web, de hecho en un entorno de produccin real la forma ms
comn de realizar las labores de administracin y configuracin de un sitio Web es a travs del la herramienta de administracin del propio servidor Web IIS (Internet Information Services).
Eje
ASP .NET 4.0 ofrece una nueva consola MMC (Microsoft Management Console) integrada como parte de la administracin del servidor IIS. Desde esta herramienta integrada dentro de IIS tendremos acceso a todas las posibilidades de configuracin que nos ofrecen los ficheros de configuracin de la aplicacin ASP .NET. En la se puede ver el aspecto que presenta esta nueva consola.
Pgina | 28
to
tex
Figura 8
de
ASP .NET 4.0 da completo soporte para los procesadores de 64 bits, aprovechando las caractersticas que stos ofrecen, y
las aplicaciones Web de ASP .NET 4.0 se comportarn perfectamente como aplicaciones de 64 bits.
Como puede ver el lector son muchas las mejoras y novedades que aporta esta nueva versin de ASP .NET, esta ha sido
una visin muy general de las novedades que presenta ASP .NET 4.0, en los siguientes captulos iremos entrando en los
distintos detalles.
lo
Material necesario
El nico material necesario para seguir el texto, ya lo hemos adelantado antes, es la herramienta de desarrollo Visual Studio 2010 y en concreto el mdulo denominado Microsoft Visual Web Developer 2005.
mp
VS 2010 nos ofrece adems del .NET Framework 4.0, el servidor de base de datos SQL Server 2005 Express y el servidor
Web Cassini (denominado tambin Servidor Web de desarrollo dentro de VS 2010), por lo tanto podemos seguir el texto
y desarrollar aplicaciones Web en las versiones Home y Professional de Windows XP, as como desde Windows 2003
Server, ya que no es necesario contar con SQL Server ni con el servidor Web Internet Information Services.
Como curiosidad le comentar al lector que si ejecuta una aplicacin Web desde Visual Studio 2010 ver que en la parte
Eje
derecha de la barra de tareas del sistema operativo a parece un icono amarillo ( ), que es el que representa al servidor
Web Cassini. Si pulsamos con el botn derecho del ratn y seleccionamos la opcin Propiedades veremos una ventana
que representa a este servidor Web de desarrollo, y desde esta ventana tenemos la posibilidad de parar su ejecucin.
Pgina | 29
to
tex
Figura 9
A lo largo del texto iremos abordando distintos aspectos de Visual Studio 2010 segn vaya siendo necesario a la hora de
realizar alguna tarea dentro del desarrollo de aplicaciones Web con ASP .NET 4.0.
Eje
mp
lo
de
Con este ltimo apartado damos por finalizado este captulo de introduccin a la tecnologa ASP .NET 4.0. En el siguiente captulo veremos una serie de conceptos generales sobre la orientacin a objetos y los lenguajes orientados a objetos.
Pgina | 30
to
tex
Dejamos el aspecto terico de los dos captulos anteriores, y pasamos a punto de vista ms prctico. En este captulo se va
a comentar paso a paso la creacin de una aplicacin Web con Visual Studio 2010, tambin se describir el entorno de
trabajo ptimo que debemos tener para seguir el texto satisfactoriamente.
Tambin crearemos nuestra primera pgina ASPX y se comentar el entorno de desarrollo que nos ofrece VS 2010.
A partir de este captulo empezaremos a tratar en detalle los distintos elementos de ASP .NET 4.0, que adelantamos brevemente en el captulo de introduccin a esta nueva versin de las pginas ASP .NET.
El entorno de trabajo
de
Como requisito indispensable para poder seguir el texto correctamente y poder desarrollar los distintos ejemplos y casos
prcticos que en l aparecen, es necesario tener instalado Visual Studio 2010, es decir, la ltima versin del entorno integrado de desarrollo que ofrece Microsoft para su plataforma .NET 4.0.
Ya hemos visto que la instalacin de Visual Studio 2010 es un proceso muy sencillo.
Adems del entorno de desarrollo integrado (IDE), al instalar VS 2010 se instalan dos elementos fundamentales:
La versin 4.0 del .NET Framework
lo
Con esto podemos decir que el propio VS 2010 nos ofrece todo lo necesario para poder desarrollar aplicaciones Web con
ASP .NET 4.0. Por lo tanto nuestro sistema operativo puede ser Windows XP en sus versiones Home o Professional, ya
que no ser necesario utilizar el servidor Web Internet Information Server (incluido en Windows XP Professional) o Windows 7 en cualquiera de sus ediciones
mp
Como entorno de trabajo para poder seguir el curso ya sera suficiente con la instalacin de VS 2010 ya que incluye la
plataforma .NET en su versin 4.0, un sistema gestor de bases de datos y un servidor Web para poder ejecutar nuestra
aplicacin Web. Ahora bien, la cosa cambia cuando se trata de un entorno de desarrollo real.
En un entorno de desarrollo real la mquina del desarrollador, adems de tener instalado VS 2010, como sistema operativo podra tener Windows XP en sus ediciones Home o Professional, ya que se pueden realizar pruebas locales de la aplicacin Web mediante el servidor Web que se encuentra integrado dentro de VS 2010. Pero tambin sera necesario disponer de un servidor Web de pruebas que ofreciera un entorno ms real de ejecucin para la aplicacin Web basada en ASP
.NET 4.0 que se est desarrollando.
En el servidor de pruebas deberemos tener instalado lo siguiente:
Sistema operativo Windows 2003-2008 Server
Eje
El orden de la instalacin en el caso del servidor Web IIS y la plataforma .NET Framework 4.0 es importante, el .NET
Framework se debe instalar despus de haber instalado el servidor Web.
Pgina | 31
to
Con estos requisitos tendremos un servidor de pruebas que representa un entorno de ejecucin bastante comn en el desarrollo de aplicaciones Web basadas en ASP .NET 4.0. Para casos concretos, cuando los requisitos en el servidor de produccin sean distintos, deberemos implementar los requisitos correspondientes en nuestro servidor de pruebas.
Una forma muy comn de desarrollar con Visual Studio 2010 aplicaciones Web basadas en ASP .NET, es la que vamos a
describir a continuacin.
tex
Cada miembro del equipo de desarrollo tiene una copia local de la aplicacin Web que se est construyendo, y en su
equipo tendrn instalado Windows XP en cualquiera de sus versiones y VS 2010. De esta manera pueden ir desarrollando
y ejecutando localmente la aplicacin.
Las soluciones de VS 2010 que contienen cada una de las copias locales de la aplicacin Web en los equipos de desarrollo, debern estar conectadas a un servidor de control de cdigo fuente como puede ser Visual SourceSafe o Team Foundation Server, para de estar forma ir controlando los distintos cambios que cada miembro del equipo de desarrollo est
realizando en su proyecto Web local, y as no se perder el trabajo de ninguno de los miembros del equipo, ya que Visual
SourceSafe se encarga de ir bloqueando los distintos recursos (pginas ASPX, clases, etc.) de los que consta la solucin
de Visual Studio, para que cada desarrollador los utilice de forma exclusiva y que en un momento dado pueda obtener la
ltima versin de la aplicacin Web para poder tener a su disposicin el resto de cambios que han realizado sus compaeros de equipo de trabajo.
de
Aunque la aplicacin Web se haya ido desarrollando y probando en los equipos de los desarrolladores, ser necesaria
probarla tambin en el servidor de pruebas, que ser el que contendr Internet Information Server 6.0 sobre Windows
2003 Server o IIS 7.0 sobre Windows 2008 Server, tal como indicbamos un poco ms arriba en este mismo apartado.
Visual Studio 2010 ofrece un completo entorno de desarrollo integrado para la plataforma .NET 4.0 de Microsoft, por lo
tanto adems de desarrollar aplicaciones Web podremos desarrollar otro tipo de aplicaciones, como pueden ser las aplicaciones Windows. El mdulo que vamos a utilizar de Visual Studio 2010 es el que se denomina Microsoft Visual Web
Developer 2010.
Ahora nos encontramos en disposicin de crear nuestra primera aplicacin Web con Visual Studio 2010.
lo
Eje
mp
Para crear un sitio Web de ASP .NET tenemos dos opciones dentro de VS 2010, la ms inmediata es desde la Pgina de
Inicio de VS 2010, en la parte superior izquierda, en la seccin proyectos recientes tenemos la opcin Crear: Sitio Web
Figura 10
Pgina | 32
tex
to
Tambin se puede crear un sitio Web desde la opcin de men Archivo | Nuevo sitio Web, las dos posibilidades nos llevan
a la pantalla que aparece a continuacin.
de
Figura 11
Aqu tendremos que seleccionar la opcin de sitio Web de ASP .NET, que es la que nos interesa en este caso que nos
ocupa. Dos parmetros importantes a tener en cuenta dentro de esta pantalla es la seleccin de la ubicacin del sitio Web
y del lenguaje de programacin que se va a utilizar por defecto en la aplicacin Web.
En la lista de opciones correspondiente a la ubicacin indicamos el lugar en el que se va a albergar la aplicacin Web, VS
2010 nos ofrece cuatro posibilidades:
lo
1. Sistema de archivos: es la que se encuentra seleccionada por defecto y es la que utilizaremos para realizar los
ejemplos del texto, ya que se corresponde con el entorno de trabajo que hemos comentado. En este caso la aplicacin Web va a residir en nuestro sistema de archivos local, la ruta por defecto en la que se van a situar la aplicacin Web es C:\Documents and Settings\Usuario\
Mis documentos\Visual Studio 2010\
WebSites. Si seleccionamos esta opcin se
Eje
mp
Pgina | 33
to
tex
Figura 12
mp
lo
de
2. IIS local: esta segunda posibilidad es la que tenamos cuando desarrollbamos aplicaciones Web con Visual Studio .NET 2003/2002, y consiste en que nuestro sitio Web se va a localizar en un directorio virtual dentro del servidor Web Internet Information Server que tenemos instalado en nuestro equipo. En el caso de no tener instalado
IIS o de utilizar el sistema operativo Windows XP Home Edition, esta posibilidad no se encontrar disponible. Si
seleccionamos esta opcin se utilizar el servidor Web IIS para ejecutar la aplicacin en lugar del servidor integrado Cassini. Visual Studio 2010 configurar automticamente el directorio virtual que va a contener nuestra
aplicacin, y se crear en el servidor Web IIS para que sea un directorio de inicio de aplicacin, es decir, para que
funcione como una aplicacin Web dentro de IIS.
Figura 13
Eje
3. Sitio FTP: en este caso la aplicacin Web no residir en el sistema local, como ocurra en las opciones anteriores,
sino que podr encontrarse en un sistema remoto. La comunicacin entre VS 2010 y el servidor remoto se realiza
a travs del protocolo FTP, en este caso tenemos que definir los parmetros necesarios para establecer a conexin
al sitio FTP (Figura 14). Tenemos que indicar el nombre del servidor, el nmero de puerto (por defecto el 21), el
directorio de destino, en el que se crear la aplicacin Web en el sitio FTP, y el usuario y la clave si fuera necesario, en caso contrario seleccionaramos la casilla de Inicio de sesin annimo.
Pgina | 34
to
tex
Figura 14
mp
lo
de
4. Sitio Web remoto: esta es la ltima de las opciones de seleccin de ubicacin para nuestra aplicacin Web, en
este caso, al igual que en el anterior la aplicacin ASP .NET se va a localizar en un servidor IIS remoto. VS 2010
acceder de forma remota el servidor Web que le indiquemos, tal como se ve en la siguiente figura, y configurar
automticamente el directorio virtual que se cree en el servidor Web para que sea un directorio de inicio de aplicacin, es decir, para que funcione como una aplicacin Web dentro de IIS.
Figura 15
Eje
En nuestro caso, vamos a elegir la primera alternativa para crear nuestra aplicacin Web, por lo tanto seleccionamos la
ruta en nuestro disco y pulsamos el botn Aceptar, tambin hay que sealar que en mi caso he seleccionado el lenguaje
VB .NET como lenguaje a utilizar por defecto dentro de la aplicacin Web.
En ese momento VS 2010 crear la aplicacin Web y nos presentar una pantalla muy similar a la de la figura, en realidad
la figura representa un fragmento de la ventana completa que nos ofrece VS 2010.
Pgina | 35
to
tex
Figura 16
Lo importante de aqu es ver los archivos que ha creado de forma automtica VS 2010 en el sitio Web, se ha creado una
pgina ASPX de inicio, llamada Default.aspx, un fichero de configuracin, web.config, y una carpeta especial de
ASP .NET llamada App_Data, recordamos que esta carpeta va a contener los almacenes de datos utilizados por la aplicacin, podrn contener ficheros de SQL Server (.MDF), Access (.MDB), ficheros XML, etc.
de
Con esto ya tendramos creada nuestra aplicacin Web, lista para empezar a aadir pginas ASPX u otros elementos, que
comprenden el desarrollo de la aplicacin Web.
En este apartado vamos a seguir teniendo en mente la aplicacin Web recientemente creada en el apartado anterior, ya
que la pgina ASPX que se ha aadido de forma automtica, nos va a servir para mostrar el modelo de separacin de
cdigo que utiliza ASP .NET 4.0 para mantener la separacin entre la lgica de negocio y la lgica de presentacin.
Volvamos por lo tanto a nuestra aplicacin Web que hemos creado con Visual Studio 2010 y centrmonos en la pgina
Default.aspx.
Eje
mp
lo
Si nos fijamos en la pgina ASPX veremos que el cdigo fuente incluido en la pgina ASPX es mnimo, nicamente contiene la definicin de un formulario Web dentro de la pgina. Si en el explorador de soluciones de VS 2010, pulsamos
sobre el smbolo ms (+, indicador de que se puede desplegar) que aparece al lado del fichero Default.aspx vemos
que se despliega y debajo aparece un nuevo fichero llamado Default.aspx.vb (ver en la Figura 17). Este es el fichero de la clase asociado a la pgina ASPX, es la clase parcial en la que se va a implementar toda la lgica de negocio, dejando la pgina ASPX para se encargue de la lgica de presentacin.
Figura 17
A este mecanismo de separacin de cdigo, ya lo vimos en el primer captulo de este texto, se le denomina Code-Behind.
Tambin comentamos que ya exista este mecanismo en ASP .NET 1.x, pero en ASP .NET 4.0 ha sido mejorado, ya que
se ha introducido el concepto de clase parcial (Partial Class). Esta nueva caracterstica permite una lectura de la clase
ms sencilla, ya que se genera menos cdigo y es ms sencillo de mantener, lo que se elimina en la clase parcial es la
Pgina | 36
to
definicin y declaracin de todos los controles de la pgina ASPX, ya que al definirse como parcial indicamos que la
clase final, a la que se compila, se encuentra dividida en varios ficheros, en este caso se trata de dos, la pgina ASPX y su
clase asociada.
Como podemos ver el cdigo de la clase tambin es mnimo, nicamente tiene las sentencias de definicin de la clase y
utiliza la clusula Inherits para indicar la clase de la que hereda.
using
using
using
using
using
using
using
using
using
using
System;
System.Data;
System.Configuration;
System.Collections;
System.Web;
System.Web.Security;
System.Web.UI;
System.Web.UI.WebControls;
System.Web.UI.WebControls.WebParts;
System.Web.UI.HtmlControls;
de
tex
Si hubiramos seleccionado el lenguaje C# el cdigo correspondiente de la clase sera como el que se muestra a continuacin.
Cdigo fuente 3
Figura 18
Eje
mp
lo
Este es el modelo de programacin de pginas ASPX que ofrece por defecto VS 2010, aunque al aadir una nueva pgina
ASPX nos permite seleccionar, mediante un casilla, si queremos hacer uso del modelo de separacin de cdigo o no, si
desmarcamos esta casilla se emplear para la pgina ASP .NET el modelo de cdigo que encontramos en las antiguas
versiones ASP hasta de la aparicin de la tecnologa .NET, lo que se denomina cdigo en lnea (inline coding). Literalmente, tal como vemos en la imagen inferior en la casilla aparece el texto Colocar el cdigo en un archivo independiente.
Si desmarcamos la casilla al aadir una nueva pgina ASPX se utilizar otro modelo de cdigo, este modelo de cdigo se
denomina cdigo en lnea y en este caso no existe separacin entre la lgica de presentacin y la de negocio, todo el cdigo se encuentra en la pgina ASPX, y por lo tanto no se aadir un fichero de clase asociado a la pgina ASPX, es decir,
no existir la clase parcial y nicamente se crear en el sitio Web de la aplicacin un fichero ASPX.
Lo recomendable es utilizar siempre el modelo de separacin de cdigo basado en las clases parciales.
La forma que tiene ASP .NET 4.0 de indicar la asociacin de la clase parcial con la pgina ASPX, es mediante dos parmetros de la directiva Page, es decir, de la directiva de la pgina. Para indicar el fichero de la clase se utiliza el atributo
Pgina | 37
CodeFile y para indicar el nombre de la clase que se implementa el fichero utilizamos el atributo Inherits, con este
atributo estamos indicando que la pgina ASPX hereda de la clase que se encuentra definida en la clase parcial asociada.
tex
Cdigo fuente 4
to
Por lo tanto en la pgina ASPX del ejemplo anterior aparecera el siguiente cdigo (como siempre primero en VB .NET y
luego en C#).
Para terminar este captulo vamos a crear la tpica pgina ASPX de Hola Mundo. Partimos de que ya tenemos nuestra
aplicacin Web creada, apara aadir una pgina ASPX pulsamos con el botn derecho del ratn sobre la solucin y seleccionamos la opcin de men Agregar nuevo elemento, con lo que aparece la ventana ya mostrada anteriormente. En esta
ventana, de los mltiples elementos que podemos aadir a nuestra aplicacin Web, seleccionamos el elemento Web
Forms, indicamos el nombre de la pgina ASPX y el lenguaje a utilizar para la misma.
de
Como ya hemos comentado anteriormente debemos dejar la casilla marcada de Colocar el cdigo en un archivo independiente, para utilizar el modelo de separacin de cdigo, y tambin podemos marcar la casilla Seleccionar la pgina principal. Veamos que quiere decir esto, primero debemos aclarar que el trmino pgina principal es el que se ha utilizado
para traducir el mecanismo de Master Pages, es decir, el mecanismo de pginas maestras.
Recordamos al lector que una pgina maestra la podamos utilizar para que todas nuestras pginas tengan un aspecto similar y coherente dentro de la aplicacin Web, con esto conseguimos, adems de mantener una coherencia y uniformidad en
todo el aspecto del sitio Web, un mantenimiento sencillo en lo que al aspecto y presentacin de sitio Web se refiere, ya
que si necesitamos cambiar alguna caracterstica del sitio Web no tenemos que ir pgina a pgina, solo lo cambiaremos en
la pgina maestra. Adems de darles este uso a las Master Pages, tambin pueden contener cdigo, por lo tanto tambin se
pueden aadir funcionalidades comunes a toda la aplicacin Web.
Eje
mp
lo
Realizado este inciso, volvamos al momento en el que se iba a aadir una pgina ASPX a nuestra aplicacin. Al marcar la
casilla Seleccionar la pgina principal, se nos permite asignar a la nueva pgina ASPX que vamos a crear, una pgina
maestra. De esta manera al darle al botn Agregar aparecer una ventana como la de la figura en la que indicaremos la
pgina maestra que se va a asignar a la pgina ASPX, y la seleccionaremos entre las existentes en nuestra aplicacin Web.
En el ejemplo que se muestra se va a utilizar la pgina maestra MasterPage.master. De momento no vamos a adelantar nada ms sobre las Master Pages, en el captulo correspondiente veremos esta novedad de ASP .NET 4.0 con todo
lujo de detalles.
Pgina | 38
Figura 19
to
Ya tenemos creada nuestra pgina ASPX, ahora en a vista de diseo de VS 2010 vamos a arrastrar desde el cuadro de
herramientas dos controles Web estndar, un control Label y un control Button. La funcionalidad de muestra pgina
va a ser muy sencilla, al pulsar el botn aparecer el mensaje Hola Mundo en la etiqueta.
Una vez aadidos los dos controles, el cdigo fuente de la pgina quedara de la siguiente forma. Este sera la lgica de
presentacin (Cdigo fuente 5).
tex
de
Cdigo fuente 5
Si hacemos doble clic sobre el botn en la vista de diseo, automticamente VS 2010 nos llevar al cdigo de la clase
parcial Code-Behind para que demos el contenido al mtodo Button1_Click, que va a ser el manejador del evento
Click del botn del formulario Web. Dentro de este mtodo vamos a incluir una nica lnea de cdigo cuya funcin va a
ser asignar a la propiedad Text del objeto Label el valor Hola Mundo. Esta sera la lgica de negocio, y el cdigo
fuente de la clase sera el siguiente.
Partial Class HolaMundo
Inherits System.Web.UI.Page
End Class
System;
System.Data;
System.Configuration;
System.Collections;
System.Web;
System.Web.Security;
System.Web.UI;
System.Web.UI.WebControls;
System.Web.UI.WebControls.WebParts;
System.Web.UI.HtmlControls;
mp
using
using
using
using
using
using
using
using
using
using
lo
Eje
Cdigo fuente 6
Ahora ya podemos ejecutar la pgina ASPX dentro de nuestra aplicacin, para ello pulsaremos el botn con el icono
de la barra de men de VS 2010, este botn indica el inicio de depuracin de nuestra aplicacin Web. La primera vez que
ejecutemos nuestra aplicacin Web de esta manera aparecer una ventana como la de la figura, que nos indica que es necesario habilitar el modo de depuracin en el fichero de configuracin (web.config) de nuestra aplicacin Web. En
Pgina | 39
tex
to
nuestro caso permitiremos que se modifique de forma automtica el fichero web.config para habilitar la depuracin,
ya que la tarea de depuracin es indispensable cuando estamos hablando del desarrollo de cualquier tipo de aplicacin.
Figura 20
lo
de
Veremos que al iniciar la ejecucin de la aplicacin, VS 2010 arranca el servidor Web integrado Cassini, que aparecer en
la barra de tareas de Windows, y la primera vez aparecer con un mensaje indicando que se ha iniciado, como se puede
ver en la figura.
Figura 21
Eje
mp
Ya en este momento tenemos en ejecucin nuestra aplicacin Web y veremos en el navegador nuestra primera pgina
ASP .NET 4.0. Si pulsamos el botn de nuestra pgina obtendremos algo parecido a la siguiente figura.
Figura 22
Como se ha podido comprobar cuando iniciamos la ejecucin de nuestra aplicacin Web, automticamente VS 2010 ha
arrancado el sitio Web y ha cargado la pgina HolaMundo.aspx sin que nosotros le indiquemos nada, esto es as porque si no indicamos una pgina de inicio para la solucin VS 2010 ejecutar la pgina en la que nos encontremos. Para
indicar una pgina de inicio determinada, en el explorador de soluciones pulsaremos con el botn derecho del ratn sobre
la pgina ASPX que queremos que sea nuestra pgina de inicio, y seleccionamos la opcin de men Establecer como
pgina de inicio.
Pgina | 40
to
Con esta ltima observacin se da por concluido este captulo en el que nos hemos familiarizado con el entorno de desarrollo que nos ofrece VS 2010 creando una pgina ASPX desde cero. En el siguiente captulo se comentarn una serie de
generalidades sobre el desarrollo de aplicaciones ASP .NET 4.0, como por ejemplo, los Web Forms y el tratamiento de
eventos, que nos servir de base para los siguientes captulos en los que se empezarn a ver los controles HTML y controles Web de servidor de ASP .NET 4.0.
Caso prctico
tex
Todava no hemos visto demasiadas funcionalidades de las pginas ASPX, por lo tanto este caso prctico va a resultar
muy sencillo.
Planteamiento
Se pide crear una nueva aplicacin Web con VS 2010, y aadir una pgina ASPX con el modelo de separacin cdigo y
que utilice el lenguaje VB .NET. Esta pgina debe mostrar un mensaje al pulsar un botn.
Eje
mp
lo
de
Pgina | 41