Introducción Al NET FrameWork - ASP

  • Upload
    ingcre

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    1/14

    Introducción al .NETFramework

    Cada cierto tiempo se produce una revolución en la tecnología empleada en el desarrollo deaplicaciones. El primer gran cambio que vivimos, por lo menos yo, fue el paso de laprogramación en MSDOS a la programación indo!s "in#$%, m&s tarde con la evoluciónde los sistemas operativos, el segundo cambio, las aplicaciones in'(, y a)ora estamosviviendo la tercera de las revoluciones, lo que Microsoft llama .*E+ rame!or- o m&scomnmente .*E+.Microsoft lan/a esta nueva tecnología como respuesta a tecnología 0ava de Sun. Elrame!or- .*E+ tiene grandes similitudes con la plataforma 0ava, por eso todos aquellosque est1n familiari/ados con 0ava comprender&n en seguida el funcionamiento de .*E+.Centr&ndonos en el concepto rame!or- .*E+, como el t1rmino en ingl1s dice "rame!or-2 3rma/ón% es un marco en donde nuestras aplicaciones correr&n. *uestras aplicaciones yano corren directamente ba4o el sistema operativo si no que corren ba4o este arma/ón omarco.Elementos principales .*E+ rame!or-5

    • C67 "Common 6anguage 7untime%

    • El con4unto de clases del .*E+ rame!or-

    • 3S8.*E+

    • 6os servicios eb

    • 7emoting

    • indo!s orms

    El CLR  es el motor de e4ecución de las aplicaciones .*E+, lo que en 0ava sería la m&quinavirtual de 0ava, este motor se encarga de e4ecutar todo el código .*E+ para ello a de ser endic)o lengua4e. El C67 es el encargado de convertir este lengua4e intermedio en legua4em&quina del procesador, esto normalmente se )ace en tiempo real por un compilador 09+"0ust:9n:+ime% que lleva incorporado el C67.El conjunto de clases del .NET Framework es la piedra angular de cualquierdesarrollador de .*E+, es un rico con4unto de clases, interfaces, tipos que simplifican yoptimi/an el desarrollo de aplicaciones .*E+ adem&s de proporcionar acceso a lafuncionalidad del sistema. Como desarrolladores el dominio de este con4unto de clases esvital para un buen desarrollo en .*E+.ASP.NET es la parte del .*E+ rame!or- dedicada al desarrollo !eb. 3 trav1s del servidor!eb "99S% nuestras aplicaciones 3S8.*E+ se e4ecutar&n ba4o el C67 y podremos usar elcon4unto de clases del .*E+ rame!or- para desarrollarlas, obteniendo así una versatilidady una potencia nunca antes conseguida en las aplicaciones 3S8.+ambi1n son destacables los servicios we, que nos permitir&n comunicarnos a trav1s de9nternet entre diferentes ordenadores, incluso entre distintos sistemas. 3sí como .*E+Remotin! que nos permite tener ob4etos en m&quinas remotas e invocarlos desde otrasm&quinas. ; las "indows Forms, parte del .*E+ rame!or- que permite crear

    aplicaciones en el m&s cl&sico de los sentidos.

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    2/14

    #ista !eneral de ASP.NET3S8.*E+ se )a construid ba4o los siguientes principios5

    • acilidad de desarrollo

    • 3lto rendimiento y escalabilidad• Me4orada fiabilidad

    • &cil distribución e instalación

    Suena bastante bien, aparentemente todo el mundo busca estas metas, vamos a ver cómose )a intentado acercar a cada una de ellas.

    Facilidad de desarrollo

    3S8.*E+ introduce un nuevo concepto, los , pero podríasusar otro lengua4e.9ndependencia de la )erramienta de desarrollo. 8uedes utili/ar desde el *otepad, )asta lasofistica y potente ?isual Studio .*E+, pasando por la gratuita eb Matri/.; lo me4or de todo es la rica biblioteca de clases que lleva incorporada, ya no necesitar&sobtener componentes de otras empresas para por e4emplo enviar un email, )acer

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    3/14

    #isual Studio .NETEn este curso vamos a emplear la )erramienta de desarrollo ?isual Studio .*E+ por ser lame4or y la que m&s facilidades nos proporciona a la )ora de desarrollar aplicaciones

    3S8.*E+

    ?isual Studio .*E+ no es gratis, sin embargo Microsoft ofrece una )erramienta con menoscapacidades pero gratuita, esta )erramienta se llama 3S8.*E+ eb MatriB y se puede

    descargar desde la !eb de Microsoft.)ttp5!!!.asp.net!ebmatriB 

    http://www.asp.net/webmatrix/http://www.asp.net/webmatrix/

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    4/14

    Instalación de ASP.NET3ntes de empe/ar a crear la aplicación vamos a ver si tenemos los requisitos mínimos paraempe/ar.

    Pre(re)uisitos

    Empe/aremos por el sistema operativo, necesitaremos ( 8rofesional S8', (Server S8', indo!s F8 8rofesional o (' Server. *o sirven GA, GH o F8 =ome,porque no llevan 99S "9nternet 9nformation Services%.8uede ser que an teniendo uno de los sistemas operativos necesarios no tengamosinstalado el 99S, que por defecto no viene en la configuración por defecto de instalación. Sies así, instalaremos el 99S.En "Panel de control" -> "Añadir/Quitar programas" -> "Añadir/Quitar Componentes deWindows" , y elegiremos instalar 99S.

    Si )emos instalado el 99S des*u+s de )aber instalado el .*E+ rame!or-, deberemosactivar el rame!or- en el 99S para que funcionen las p&ginas 3S8.*E+, para ello abriremosuna ventana de comandos y teclearemos lo siguiente5

    C5IJ C5C5IJ cd C5I9**+IMicrosoft.*E+Irame!or-Iv#..'KAC5I9**+IMicrosoft.*E+Irame!or-Iv#..'KAJ as*net,re!iis (i

    Dependiendo de la de versión del .*E+ rame!or- el directorio "v#..'KA% puede variar,en este caso es la versión #. de .*E+.Si instalamos el .*E+ rame!or- despu1s del 99S no tendremos que )acer esto puesto quela instalación de .*E+ lo )ace autom&ticamente.

    Crear un *ro$ecto ASP.NET

    Es muy importante antes de e4ecutar el siguiente paso tener el 99S instalado y corriendo. 6o

    podemos poner en marc)a desde

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    5/14

    Suponiendo que )emos instalado el ?isual Studio .*E+, lo abrimos y pulsamos sobre elbotón de nuevo proyecto.na ve/ con el IIS corriendo, seleccionamos

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    6/14

    Creando un "e Formna ve/ que tenemos generada la aplicación 3S8.*E+, vamos a crear un eb orm que esla base de cualquier p&gina !eb .*E+.

    8rimero crearemos un directorio dentro del proyecto para tener los e4emplos ordenados, eldirectorio lo llamaremos

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    7/14

    *os aparecer& un cuadro de di&logo en el que se nos preguntar& el nombre del !eb form"p&gina !eb%, en este e4emplo le daremos

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    8/14

    A-adiendo Controles deServidorna ve/ creado nuestro eb orm, ya podemos aLadir controles de servidor, primero)acemos doble clic sobre el fic)ero

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    9/14

    sando el Code(/e0indEn el apartado anterior )emos visto cómo aLadir controles de servidor a un eb orm y elcódigo =+M6 que se genera, a)ora vamos a ver el código C> que )ay que lleva esta p&gina, que es el siguiente5

    using SystemTusing System.CollectionsTusing System.ComponentModelTusing System.DataTusing System.Dra!ingTusing System.ebTusing System.eb.SessionStateTusing System.eb.9Tusing System.eb.9.ebControlsTusing System.eb.9.=tmlControlsT

    namespace ebEstiloE4emplos.e4em#U

      summaryJ  Summary description for E4emplo#.  summaryJpublic class E4emplo# 5 System.eb.9.8ageU

    protected System.eb.9.ebControls.+eBt@oB tBt*ombreTprotected System.eb.9.ebControls.6abel lbl*ombreTprotected System.eb.9.ebControls.@utton btnEnviarT

    private void 8age6oad"ob4ect sender, System.Event3rgs e%U

      8ut user code to initiali/e t)e page )ereV

    >region eb orm Designer generated codeoverride protected void On9nit"Event3rgs e%U   CODERE*5 +)is call is required by t)e 3S8.*E+ eb orm Designer. 9nitiali/eComponent"%Tbase.On9nit"e%T

    V

      summaryJ

      7equired met)od for Designer support : do not modify  t)e contents of t)is met)od !it) t)e code editor.  summaryJprivate void 9nitiali/eComponent"%U

    t)is.6oad W2 ne! System.Event=andler"t)is.8age6oad%TV>endregion

    VV

    ?amos a eBplicar un poco la estructura de este fic)ero de código C>.8rimero vemos que )ay una sección

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    10/14

    servidor. Este espacio de nombres "namespace% contiene todas las clases relacionadas conlos controles de servidor.Seguidamente pasamos a especificar en qu1 espacio de nombres estar& la clase que vamosa definir, todas las clases deben pertenecer a un espacio de nombres. En este casoindicamos que el espacio de nombres "namespace% en el que se incluir& nuestra clase esebEstiloE4emplos.e4em#.3 continuación definimos la clase que se asociar& con la p&gina !eb, la clase que mane4ar&todo el funcionamiento de la p&gina !eb E4em#.apsB.6a clase se llama E4emplo# y como pertenece al espacio de nombresebEstiloE4emplos.e4em#, su nombre real es ebEstiloE4emplos.e4em#.E4emplo#, si osdais cuenta coincide con el atributo 9n)erits de la p&gina E4emplo#.aspB que se encuentraen la cabecera de dic)a p&gina, de esta forma es cómo se enla/a la p&gina aspB con laclase de código C> que se e4ecutar&.na ve/ dentro de la clase, definimos los atributos que contiene, en este caso son 'correspondientes a los ' controles de servidor que )emos arrastrado antes desde la barrade )erramientas. na ca4a de teBto "+eBt@oB% llamada tBt*ombre, una etiqueta "6abel%llamada lbl*ombre y un botón "@utton% llamado btnEnviar.6uego )ay un m1todo que se llama 8age6oad"% que se e4ecuta cuando se carga la p&ginay que por a)ora est& vacío.; para finali/ar )ay una región de código que la genera el diseLador de ?isual Studio .*E+

    que de momento no vamos a entrar a comentar y que es me4or, como advierte, que notoquemos.

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    11/14

    A-adiendo eventos a loscontroles3)ora vamos a aLadir un evento a un control de servidor, dic)o evento e4ecutar& código C>para reali/ar una acción en concreto.8rimero vamos a la vista de diseLo, en la que podremos ver la ca4a de teBto, la etiqueta yel botón. Seguidamente aLadiremos un evento al botón para que cuando sea pulsado see4ecute una acción en el servidor. 8ara aLadir el evento de clic al botón pulsaremos dobleclic sobre el botón en la ventana de diseLo del formulario.Esto nos llevar& a la ventana de edición de código C>, en la que se nos )abr& creado unm1todo btnEnviarClic-"% que se )abr& asociado con el evento clic del botón.En este m1todo escribiremos el código que queremos que se e4ecute cuando se pulsa clicsobre el botón region eb orm Designer generated codeoverride protected void On9nit"Event3rgs e%U   CODERE*5 +)is call is required by t)e 3S8.*E+ eb orm Designer. 9nitiali/eComponent"%Tbase.On9nit"e%T

    V

      summaryJ  7equired met)od for Designer support : do not modify  t)e contents of t)is met)od !it) t)e code editor.

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    12/14

      summaryJprivate void 9nitiali/eComponent"%U

    t)is.btnEnviar.Clic- W2 ne! System.Event=andler"t)is.btnEnviarClic-%Tt)is.6oad W2 ne! System.Event=andler"t)is.8age6oad%T

    V>endregion

    private void btnEnviarClic-"ob4ect sender, System.Event3rgs e%U

    lbl*ombre.+eBtW2 tBt*ombre.+eBtTV

    VV

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    13/14

    Eventos de P'!ina3sí como los controles de servidor pueden tener eventos, tambi1n las p&ginas disparaneventos. El m&s )abitual de los eventos es el que se produce cuando la p&gina se carga, es

    el evento

  • 8/19/2019 Introducción Al NET FrameWork - ASP

    14/14

      override protected void On9nit"Event3rgs e%U   CODERE*5 +)is call is required by t)e 3S8.*E+ eb orm Designer. 9nitiali/eComponent"%Tbase.On9nit"e%T

    V

      summaryJ  7equired met)od for Designer support : do not modify  t)e contents of t)is met)od !it) t)e code editor.  summaryJprivate void 9nitiali/eComponent"%U

    t)is.6oad W2 ne! System.Event=andler"t)is.8age6oad%T

    V>endregion

    V

    V