You are on page 1of 50

m 

Ú 
Ú 
   Ú
    
Ú 
Õ   

ƥ Introducción a ASP.NET
6 Monceptos y Arquitectura
6 Maracterísticas de ASP.NET
6 ASP.NET Avanzado
ƥ ASP.NET y el Microsoft® .Net Framework
M  
ƥ Sección 1: Generalidades
ƥ Sección 2: Arquitectura
6 El .NET Famework y la configuración de ASP.NET
ƥ Sección 3: Maracterísticas de ASP.NET
6 Administración de estado, Seguridad, y Modelo de
Eventos
ƥ Sección 4: ASP.NET Avanzado
6 Web Forms
6 Trabajando con Datos
6 Migrando ASP a ASP.NET


  

ƥ ƠMirando atrás ...Ơ


ƥ Monceptos centrales de ASP.NET
   

   
ƥ ¿Que es ASP?
6 Tecnología de scripting del lado del servidor
6 Archivos conteniendo HTML y código de scripting
6 Acceso a través de peticiones HTTP
6 El código es interpretado en el servidor
ƥ ¿Que se puede hacer con ASP?
6 Mreación rápida y fácil de aplicaciones Web simples
6 Generar contenido Web dinámico
6 Generar código de validación del lado del cliente
6 Acceder a componentes M M para extender la
funcionalidad
Bases de datos
ë !"# $%  &
ƥ Mucha Ơmezclaơ de código y HTML de presentación
ƥ El código ASP se interpreta disminuyendo el
rendimiento
ƥ El código de scripting es poco específico
6 Microsoft JScript®
6 Microsoft Visual Basic® Scripting Edition (VBScript)
ƥ Mompatibilidad con los navegadores
ƥ No hay administración real del estado
6 No se puede compartir estados en una Ơgranja de
servidoresơ
6 El estado se pierde cuando el IE falla
ƥ Sólo se pueden actualizar archivos cuando el
servidor no está en actividad
M 
' 
  
ƥ Plataforma de desarrollo de Web
ƥ Nuevo modelo de programación
M 

   





 
  
M 
' 
  
ƥ Separar presentación de lógica del negocio
ƥ Usar servicios provistos por el .NET
Framework
ƥ El código es compilado la primera vez que
se accede a una página
ƥ Administración de estado
ƥ Utilización de cualquier lenguaje
6 Integración entre varios
ƥ ¡Actualizar archivos mientras se está
ejecutando la aplicación!


( ! 


ƥ La Arquitectura del .NET Framework


ƥ Modelo de Aplicación Web
ƥ Monfiguración
ƥ Jerarquía de Mlases
) %* +,  ! 





Windows Forms

 

Marco de Servicios
Base Datos Depuración ...

Common Language Runtime

Servicios del Sistema


  '

-
Código no administrado
HTTP p 

 - S, nternet Explorer)

HTTP p 

Módulo HTTP

Módulo HTTP

Manejador de Requerimientos
...

Código administrado
^   %
ƥ Módigo administrado
6 Se ejecuta en un proceso no administrado
ƥ Permite 100% de disponibilidad
6 Procesa asincrónicamente todas las
llamadas
6 Multithreaded
ƥ Reemplaza ISAPI
6 Internet Server Application Programming
Interface
u  

% ^
ƥ Módulo HTTP
6 Mlases administradas
6 Mada módulo implementa una interfaz específica
Ejemplos: Administración de Estado o Seguridad
6 Todas las llamadas se reenvían a la misma línea de
ejecución
6 Se agregan módulos por el Monfig.web
ƥ Manejador de requerimientos
6 Mlases administradas
6 Múltiples manejadores para una aplicación
Pero sólo uno por URL
M 
./
ƥ Monceptos y Arquitectura
6 Arch. de configuración: Monfig.web
Basado en XML, legible y modificable por Ơhumanosơ
El archivo se mantiene en el mismo directorio que la aplicación
Los cambios se detectan automáticamente
6 Arquitectura de configuración jerárquica
Afecta el subdirectorio actual y todos los dependientes

Root Config.web
Dir
Sub
Dir1
Sub
Dir2
M 
(./
ƥ Ejemplo Monfig.web
  

  

     


        

     
 

  

  

        

  

  

            

  

  

M 
/./
ƥ Monfiguración por defecto y personalizada
6 El Monfig.web por defecto está en
%windir%\Microsoft.NET\Framework\Version
Monjunto estándar de configuración
Mapacidades de los navegadores, mensajes de error
personalizados, etc.
6 Monfiguración personalizada
Extiende el conjunto de las estándares
Implementando la interfaz:
System.Web.Configuration.IConfigurationSectionHandler
ÿ !
 
 #

 
M

 
 M
M
 M   

  "

M!  
 




/

  

ƥ Sintaxis y lenguajes soportados por
ASP.NET
6 Ejemplos
ƥ Proceso de ejecución
ƥ Assemblies
ƥ Administración de Estado, Seguridad, y
Manejo de Eventos

$

 
ƥ No hay más mezcla entre HTML y código
ejecutable
6 Mayor facilidad en el mantenimiento
ƥ Separación completa entre la presentación y la
lógica
6 Sin código en los archivos HTML
6 Archivos para diseñadores y Archivos para
programadores
6 Así y todo, todavía es posible mezclar HTML y código si
es necesario .cs

.aspx
Y
.vb
u  '  
ƥ Visual Basic
6 ¡VBScript es no administrado!
ƥ JScript
ƥ M
6 Nuevo lenguaje basado en componentes
ƥ M
6 Extensiones administradas para M
ƥ tros: Mobol, Smalltalk, ...
6 Que respeten el Mommon Language
Specification (MS)
 


ƥ Diferentes archivos, distinguibles por su
extensión
6 Archivos ASP.NET estándar:
.aspx o .ascx
6 Servicios Web :
.asmx
6 Archivos de código:
.cs .vb ...
6 Monfiguración:
Monfig.web
6 Aplicaciones Web :
Global.asax
ƥ Son todos Archivos de texto
ƥ La forma más rápida de comenzar
6 Mambiar la extensión .asp por .aspx
 0 ' ./
ƥ Directivas
6 !"#  $%!

ƥ Bloques de declaración de código


6     & ' 
(

')    (
 

ƥ Módigo de conversión (Render)


6 !
'  )  *  (
!

ƥ Sintaxis de controles HTML


6 +,   & '  
(

+, 

 0 ' (./

ƥ Sintaxis de Montroles
6 Montroles del Lado del servidor
-#.+ * %* +/  & 

6 Propiedades del control del servidor


-#.+ * %**  01  & 

6 Sub propiedad (del lado del cliente)


-#.,   2 /3  & 

6 Vinculación a eventos del control


-#.% 4 5 5
  & 

 0 ' /./

ƥ Expresión de vinculación a datos


6 !6w  
  

ƥ Marcadores de objetos del lado del servidor


6 7     & 
 

ƥ Directivas de inclusión en el servidor


6  6  §  
 

ƥ Momentarios en el servidor
6 ! M !
%'  .(
 

   $%  & 

 % 8 59  - 47 :;- ;&  - <


  + * => + *
; 
 

 

     *     & 

?
> .
 . * * >   & 

 .      * ,5@


4 5 % 8 5  & 



 .      & 



 

 

%'  (.(


M
 

 '0
M  $

S
Pide archivo aspx
ASP.NET Runtime

Analiza el M 

÷enera la clase Page

nstancia los
controles

Respuesta

 


ƥ Mompilación, la primera vez que se pide una
página
ƥ Microsoft intermediate language (MSIL)
6 Lenguaje de estilo Assembly
6 Independiente de la MPU
6 Provee una capa de independencia del hardware
6 MSIL es ejecutado por el Motor Momún de
ejecución (common language runtime)
ƥ Motor de ejecución común
6 Mompilador Ơjusto en el momentoơ (JIT)
6 Módigo administrado
%
    .(
ƥ Estado de una Aplicación
6 Que es una Ơaplicaciónơ?
Archivos, páginas, módulos, y código ejecutable
Un subdirectorio virtual y sus dependientes
6 Variables de estado de la Aplicación
Información global
6 Reglas de Implementación
Utilización de recursos del sistema
Bloqueo y desbloqueo de la información global
En entornos de múltiples hilos (Ơmultithreadedơ) se debe
tener cuidado
Se pierde el estado cuando el cliente se cierra
No hay estado a través de una Granja de servidores
%
   (.(
ƥ Estado de sesión
6 ¿Que es una sesión?
Restringida a una aplicación lógica
Montexto en el cual un cliente se conecta con
un servidor
6 Funcionalidad
Solicitud de identificación y calificación
Almacenar Datos entre llamadas
Eventos de Sesión
Liberación de los datos de Sesión
6 Proceso de estado en el Servidor .NET
  ./
ƥ Motivos
6 Prevenir el acceso a áreas del Servidor Web
6 Registrar y almacenar información relevante de los
usuarios
ƥ Monfiguración de Seguridad
6 Tag <Security> en el archivo Monfig.web
ƥ Autenticación, Autorización, Impersonalización
ƥ Seguridad de acceso al código
6 ¿es éste realmente el código original del servidor?
6 Proteger el servidor de Ơcódigo maliciosoơ
  (./
ƥ Autenticación
6 Validar credenciales del usuario
6 Utilizar identidades de autenticación
6 Tipos de Autenticación
Windows, integrada con IE 5.0
Passport, servicios centralizados provistos por Microsoft
Mookie, adjunto en el requerimiento
ƥ Autorización
6 Determinar cuando es permitido un requerimiento
6 Autorización por Archivo y por URL
  /./
ƥ Impersonalización
6 IE autentica al Ơusuarioơ
6 Se pasa un Ơtokenơ a la aplicación ASP.NET
6 ASP.NET lo impersona
6 El acceso se permite de acuerdo a las
asignaciones por NTFS
ƥ Seguridad de Acceso al código
6 Maracterística del .NET Famework
6 Verifica la identidad del código y su origen
6 Especifica las operaciones que el código tiene
permitido ejecutar
   .(
ƥ Manejo de eventos a nivel de la Aplicación
6 Web Forms
ƥ Modelo de delegados
6 Monecta un manejador de evento con un receptor
6 Delegados simples y múltiples
ƥ Los Delegados de eventos son ƠMulticastơ
ƥ Enlace de Evento
6 Registra un manejador con el que envía el evento
   (.(
ƥ Evento disparado en el cliente, pero
controlado en el servidor

 # 
M 

 %  
 #

Llama al
manejador
apropiado


# $

 " 
%' 
ƥ Ejemplo
6   @A  
Mlase mutton, evento público Click
6   @A
Mlase 6age, evento público Load
ƥ Eventos en M
ASP.NET  .A %   > *   & 
   5 > * 8 5

M  &  > * 8 5947 :


A  5;&  - ;<
B
'   (
C


1
  2 

ƥ Web Forms
ƥ Montroles del Servidor
ƥ Trabajando con Datos
ƥ Aplicaciones Web
ƥ Migrando de ASP a ASP.NET
  - ) %.(
   *   

  % 8 59<


 .%  ,5@ B
4 5D % 8 5


  - ) %(.(
ƥ Mrear páginas Web Programables
6 Usando cualquier lenguaje .NET
6 Provee un rico conjunto de controles del
lado del servidor
6 Modelo de Eventos de los Web Forms
ƥ Morren en cualquier navegador
ƥ Partes visuales y lógicas de la Aplicación
ƥ System.Web.UI.WebControls
%' - ) %
ƥ thisfile.cs:
# &  % 8 5947 :;&  - ;<
  + * => + *
; 

ƥ thisfile.aspx:
!"# , 6       !

 

     *     & 

?
> . . * * >   & 

 .      * ,5@ ,5@


4 5 % 8 5  & 



 .      & 



 

 

M    
  
ƥ Web Forms
ƥ Familias
6 HTML
6 ASP.NET
6 Validación
6 Usuario
6 Móvil
ƥ Vinculación a Datos
ƥ Mlase 6age
6 Reunión de código y contenido
) % .(
ƥ HTML
6 Vinculados directamente con elementos HTML
6 Atributos HTML
6 Ejemplos: HtmlAnchor (
), HtmlTable ( 
)
ƥ ASP.NET
6 Montroles abstractos
No hay una relación Ơuno a unoơ con HTML
6 Modelo de objetos predefinido
6 Detección automática del navegador
6 Monjunto rico
6 Ejemplo: Textmox ( . * *
)
) % (.(
ƥ Validación
6 Montrola los ingresos del usuario
6 Diferentes tipos
Ingreso requerido
Momparación, rango, patrón
Definidos por el usuario
ƥ Pagelets (Definidos por el usuario)
6 Permite reutilizar funcionalidad
6 Extensión .ascx
6 Soporte a un modelo de objetos
ƥ Montroles ƠMobileơ
 0
ƥ Enfocado a ASP.NET
6  .   

6 ë bre
Textmox, DropDownList, etc.
6 atribut 
A AE  
  & 
%' M   
ƥ Montrolado.aspx:
 .+ * %*  * -    & 
*,  FGG

 .H I J  $   HJ$/


  & 

ƥ Montrolado.cs:
  9A&  &# $   <
B
&$  9<K
C
M
#"
ƥ Mejora el rendimiento de la aplicación Web
ƥ Maché de salida
6 Almacena y obtiene páginas y objetos
6 Maché de página
6 Maché de fragmentos
ƥ Reglas de expiración
ƥ APIs
6 Permite personalizar las acciones del Maché
'

 -
ƥ ASP.NET define una aplicación Web como la
Ơsuma de todos los Archivos, páginas, manejadores
(de eventos), módulos, y código ejecutable que
pueden ser invocados o ejecutados en el entorno de
un directorio virtual dado, en un Servidor Webơ
ƥ Aplicaciones distribuidas
Presentación Capa de Negocio Base de
Datos

nternet
Servicio Web

   
ƥ ASP y ASP.NET pueden coexistir en el
mismo servidor
ƥ Puede usar características de ASP.NET
ƥ Al migrar, los archivos ASP deben ser
modificados
ƥ Rendimiento
6 Módigo administrado vs. no administrado
6 Vinculación temprana vs. tardía
% 

ƥ Estructura
6 Bloques de código y directivas
ƥ Seguridad
6 Seguridad ASP.NET como se describió antes
ƥ Lenguajes
6 M, Visual Basic.NET
ƥ Acceso a Datos
6 AD a AD .NET
%
ƥ Elementos importantes de ASP.NET
6 Monfiguración
6 Web Forms y Servicios Web
6 Seguridad
6 Administración de estados
6 Acceso a Datos
6 Aplicaciones Web
6 Migración

You might also like