ASP.
NET &
SQLServer
Maria Luz Vargas H..
Universidad Mayor de San Simn
Cochabamba, Febrero del 2010
Contenido
Introduccin
[Link]
Entorno de desarrollo: Visual Studio
2005
Web Forms
Introduccin (1)
Una aplicacin web es un conjunto de
pginas HTML que se transmiten por medio
del protocolo HTTP de un servidor al cliente
y viceversa, brindando distintas
funcionalidades a un usuario final.
[Link] es un Marco (framework) para
programar aplicaciones web, de un modo
similar al que se programan las aplicaciones
windows. El componente principal son los
Web Forms (formularios web) que permiten,
entre otras cosas, separar la interfaz del
usuario de la funcionalidad de la aplicacin .
Introduccin (2)
Un servidor web es un sistema informtico
conectado a una red, donde se almacenan
las pginas, imgenes, etc. (que forman
una aplicacin web) disponibles para ser
visitadas por los usuarios de la red.
Internet Information Server (IIS), es el
servidor Web de Microsoft que corre sobre
plataformas Windows. Los servicios que
ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS
Hypertext Transfer Protocol
(HTTP)
Uno de los protocolos ms
importantes de Internet
HTTP define como los navegadores y
los servidores Web se comunican uno
con otro
Esta basado en texto y es
transmitido sobre conexiones TCP
Funcionamiento de HTTP
Cliente
[Link]
[Link]/[Link]
IP=[Link]
Puerto: 80
Servidor
HTTP Request
[Link].c
om
IP = [Link]
HTTP Response
[Link]
<html>
<body>
Bienvenidos al
Curso [Link]
</body>
</html>
Pagina solicitada
[Link]
<html>
<body>
Bienvenidos al
Curso [Link]
</body>
</html>
HTTP Request
GET /[Link] HTTP/1.1
Accept: */*
Accept-Language:...
Accept-Encoding:...
If-Modified-Since:...
If-None-Match:...
User-Agent: Mozilla/4.0...
Host: [Link]
Connection: Keep-Alive
[blank line]
HTTP Response
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: ...
Content-Type: text/html
Accept-Ranges: bytes
Last-Modified: ...
ETag: ...
Content-Length: 46
[blank line]
<html>
<body>
Bienvenidos al Curso [Link]
</body>
</html>
HTML Forms (1)
En el corazn de toda aplicacin Web genuina estn
los HTML Forms
Un HTML Form es la porcin de un documento HTML
que aparece entre las etiquetas <form></form>
[Link]
<html>
<body>
<form>
<input type="text" name="op1" />
+
<input type="text" name="op2" />
<input type="submit" value=" = " />
</form>
</body>
</html>
HTML Forms (2)
Un botn submit (<input type=submit>) juega un
rol especial en un HTML Form:
Cuando es pulsado, el navegador enva el HTML Form
junto con cualquier entrada de datos del usuario al
servidor Web
Cmo el HTML Form es enviado, depender del atributo
Method del form:
Si el atributo Method del form no est presente o tiene el
valor GET, el navegador enviar al servidor un comando HTTP
GET
Si el atributo Method del form tiene el valor POST, el
navegador enviar al servidor un comando HTTP POST
HTML Forms (3)
Method = GET
Method = POST
<form method=get">
...
<form method=post">
...
</form>
</form>
GET /[Link]?op1=2&op2=2 HTTP/1.1
.
.
.
Connection: Keep-Alive
[blank line]
POST /[Link] HTTP/1.1
.
.
Content-Type: ...
Content-Length: 11
[blank line]
op1=2&op2=2
El navegador enva los datos El navegador enva los datos
ingresados en el cuerpo
ingresados como una
de la solicitud HTTP
cadena de consulta
Cualquiera sea el mtodo utilizado, es decir GET o POST, cuando un form es
enviado al servidor, decimos que se produjo un POSTBACK
Procesamiento en el
Servidor
Construir la parte del cliente es fcil, slo es HTML
La parte difcil es la construccin de la lgica del lado del
servidor. Algo en el servidor, tiene que interpretar las
entradas del usuario enviadas junto con el form y generar
la correspondiente salida.
[Link]
<html>
<body>
<form>
<input type="text" name="op1" />
+
<input type="text" name="op2" />
<input type="submit" value=" = " />
</form>
</body>
</html>
Antes del
procesamiento
Despus del
[Link]
procesamiento
<html>
<body>
<form>
<input type="text" name="op1 value=2/>
+
<input type="text" name="op2 value=2>
<input type="submit" value=" = " />
4
</form>
</body>
</html>
Procesamiento en el
Servidor
Existen varias tecnologas de procesamiento:
CGI (Common Gateway Interface)
Define una API de bajo nivel
Popular en entornos UNIX, no tanto en Windows
ISAPI (Internet Server Application
Programming Interface)
Son DLL Windows que corren bajo IIS. Escritas en C++
Mejor performance que CGI
ASP (Active Server Pages)
Simple solucin: HTML + Script del lado del servidor
Programadas en JScript o VBScript
Objetos intrnsecos que abstraen detalles de bajo nivel de
HTTP. Objetos Request y Response
Permite usar ADO (ActiveX Data Object) para acceso a
datos
[Link]
[Link] es el framework de programacin web
dentro de .NET
Permite desarrollar aplicaciones Web con un modelo
similar al utilizado para aplicaciones Windows
El componente fundamental de [Link] es el
WebForm
Independencia del cliente (navegador, S.O.,
dispositivo fsico, etc.)
Permite utilizar cualquier lenguaje .NET
Permite desarrollar Servicios Web XML
[Link] Ventajas (1)
La parte ejecutable de una aplicacin
[Link] es COMPILADA
Implementacin y actualizacin de las
aplicaciones sin reiniciar el servidor!
Acceso a toda la .NET Class Library
Independiente del lenguaje de programacin
Encapsulamiento de funcionalidad a travs de
controles de servidor y controles de usuario
[Link] Ventajas (2)
Permite usar [Link] para acceso a datos
Soporta XML, Hojas de estilo CSS, etc.
Deteccin automtica del navegador cliente,
generando el lenguaje de marcas soportado por el
mismo
Mecanismo de Caching incorporado para pginas
completa o partes de la misma frecuentemente
solicitadas
Visual Studio 2005 (1)
Es un potente IDE, con el cual
podemos desarrollar diversos tipos
de proyectos:
Aplicaciones
Aplicaciones
Aplicaciones
Aplicaciones
de consola
para Windows
WEB
para celulares.
Visual Studio 2005 (2)
Para crear un nuevo proyecto para
escritorio debemos seguir los
siguientes pasos:
En el men File, seleccionar New Web
Site.
En la ventana que aparece seleccionar
Web Site.
Visual Studio 2005 (4)
Visual Studio 2005 (3)
Visual Studio 2005 (4)
Herramientas del IDE
Para el diseo de formularios
disponemos de las siguientes
herramientas:
Cuadro de Herramientas (Toolbox)
Panel de Diseo
Panel de cdigo fuente
Cuadro de propiedades (Properties)
Visual Studio 2005 (5)
Controles en el cuadro de
herramientas
Estndar (Standar)
Botones, etiquetas, campos de texto , listas, cajas de
seleccin, imgenes, navegador Web, calendario, etc.
Datos (Data)
Elementos visuales para manejar datos almacenados en
Bases de Datos o generados por el sistema.
Validacin (Validation)
Validan las entradas de datos para garantizar las polticas
establecidas en el tratamiento de los datos
Exploracin (Navigation)
Componentes para mens.
Visual Studio 2005 (6)
Inicio de sesin (Login)
Componentes para el control de ingreso de
usuarios
Web Parts, HTML y Cristal Reports
Componentes normales de HTML y
herramientas para elaborar reportes.
Aplicaciones Web con [Link]
Sitio Web [Link]
Lenguaje de
programacin
Web Forms
Las Web Forms son pginas con extensin .aspx,
la directiva @ Page:
incluyen
<%@ Page Language=C# %>
Utiliza el modelo de objeto del .Net Framework
Contiene cdigo HTML y declaraciones de controles del lado
del servidor.
Code Behind
Es el cdigo que se ejecuta del lado del servidor para lograr el
comportamiento deseado en un formulario web.
Partial Class
Un nuevo concepto, que es aplicado en [Link] para vincular
las pginas aspx (la interfaz del usuario) con su Code Behind
(comportamiento).
Controles del lado del servidor
Objetos programables que se ejecutan
en el servidor Web.
Exponen interfaces con propiedades y
mtodos.
Se encargan de generar el cdigo HTML
correcto (Rendering).
Son capaces de generar distinto HTML
de acuerdo al Navegador.
Se identifican por el atributo
runat=server.
Controles HTML
Son los controles comunes de
pginas HTML, pero capaces de
utilizar el atributo runat=server.
Se encuentran definidos como
objetos dentro del Namespace
[Link]
<input type="text" id="txtNombre" runat="serve
<span id="spnInicio" runat="server">Inicio</span
Controles Web controls
Son objetos que se ejecutan del lado
del servidor.
Estos controles poseen mayor
funcionalidad, y pueden contener
otros objetos. Dependen del
Namespace
<asp:TextBox
id="txtNombree"
[Link].
runat="server Text="[Ingrese su
nombre]"/>
Comparacin de sintaxis
Controles Web
Controles HTML
<asp:Button>
<input type=submit>
<asp:CheckBox>
<input type=checkbox>
<asp:DropDownList>
<select>
<asp:HyperLink>
<a href=>
<asp:Image>
<img src=>
<asp:ImageButton>
<input type=image>
<asp:Label>
<spam>
<asp:ListBox>
<select size=>
<asp:Panel>
<div>
<asp:RadioButton>
<input type=radio>
<asp:Table>, <asp:TableRow>,
<asp:TableCell>
<table>, <tr>, <td>
<asp:TextBox>
<input type=text>