ASP.NET - neilveliz.com

ASP.NET - neilveliz.com

ASP.NET Daniel A. Seara Director Regional MSDN Buenos Aires ARGENTINA NDSoft Objetivos Introduccin a ASP.NET Conceptos y Arquitectura Caractersticas de ASP.NET ASP.NET Avanzado ASP.NET y el Microsoft .Net Framework

Contenido Seccin 1: Generalidades Seccin 2: Arquitectura El .NET Famework y la configuracin de ASP.NET Seccin 3: Caractersticas de ASP.NET Administracin de estado, Seguridad, y Modelo de Eventos Seccin 4: ASP.NET Avanzado Web Forms Trabajando con Datos Migrando ASP a ASP.NET

Seccin 1: Generalidades Mirando atrs ... Conceptos centrales de ASP.NET Mirando atrs: Active Server Pages Que es ASP? Tecnologa de scripting del lado del servidor Archivos conteniendo HTML y cdigo de scripting Acceso a travs de peticiones HTTP El cdigo es interpretado en el servidor Que se puede hacer con ASP? Creacin rpida y fcil de aplicaciones Web simples Generar contenido Web dinmico

Generar cdigo de validacin del lado del cliente Acceder a componentes COM para extender la funcionalidad Bases de datos Y qu hay de malo? Mucha mezcla de cdigo y HTML de presentacin El cdigo ASP se interpreta disminuyendo el rendimiento El cdigo de scripting es poco especfico Microsoft JScript Microsoft Visual Basic Scripting Edition (VBScript) Compatibilidad con los navegadores

No hay administracin real del estado No se puede compartir estados en una granja de servidores El estado se pierde cuando el IE falla Slo se pueden actualizar archivos cuando el servidor no est en actividad Conceptos centrales de ASP.NET Plataforma de desarrollo de Web Nuevo modelo de programacin Cliente Web

IIS Aplicaciones ASP.NET .NET Framework Sistema Operativo Conceptos centrales de ASP.NET Separar presentacin de lgica del negocio Usar servicios provistos por el .NET Framework

El cdigo es compilado la primera vez que se accede a una pgina Administracin de estado Utilizacin de cualquier lenguaje Integracin entre varios Actualizar archivos mientras se est ejecutando la aplicacin! Seccin 2: Arquitectura La Arquitectura del .NET Framework Modelo de Aplicacin Web Configuracin Jerarqua de Clases

El .NET Framework- Arquitectura .NET Framework ASP.NET Web Forms Windows Forms Servicios Web Marco de Servicios Base Datos Depuracin

Common Language Runtime Servicios del Sistema ... Modelo de Aplicacin Web Cdigo no administrado HTTP Request Host (IIS, Internet Explorer) HTTP Runtime Mdulo HTTP Mdulo HTTP Manejador de Requerimientos ... Cdigo administrado

HTTP Runtime Cdigo administrado Se ejecuta en un proceso no administrado Permite 100% de disponibilidad Procesa asincrnicamente todas las llamadas Multithreaded Reemplaza ISAPI Internet Server Application Programming

Interface Lnea de ejecucin de un mdulo HTTP Mdulo HTTP Clases administradas Cada mdulo implementa una interfaz especfica Ejemplos: Administracin de Estado o Seguridad Todas las llamadas se reenvan a la misma lnea de ejecucin Se agregan mdulos por el Config.web

Manejador de requerimientos Clases administradas Mltiples manejadores para una aplicacin Pero slo uno por URL Configuracin 1/3 Conceptos y Arquitectura Arch. de configuracin: Config.web Basado en XML, legible y modificable por humanos El archivo se mantiene en el mismo directorio que la aplicacin Los cambios se detectan automticamente

Arquitectura de configuracin jerrquica Afecta el subdirectorio actual y todos los dependientes Root Dir Config.web Sub Dir1 Sub Dir2 Configuracin 2/3

Ejemplo Config.web

Configuracin 3/3 Configuracin por defecto y personalizada El Config.web por defecto est en %windir%\Microsoft.NET\Framework\Version Conjunto estndar de configuracin Capacidades de los navegadores, mensajes de error personalizados, etc. Configuracin personalizada Extiende el conjunto de las estndares Implementando la interfaz: System.Web.Configuration.IConfigurationSectionHandler

Jerarqua System.Object System.Web.UI.Control WebControl System.Web.UI. WebControls ListControl Table ListBox Button

CheckBoxList ... TextBox ... Seccin 3: caractersticas Sintaxis y lenguajes soportados por ASP.NET Ejemplos Proceso de ejecucin Assemblies Administracin de Estado, Seguridad, y Manejo de Eventos

Presentacin y lgica de negocios No hay ms mezcla entre HTML y cdigo ejecutable Mayor facilidad en el mantenimiento Separacin completa entre la presentacin y la lgica Sin cdigo en los archivos HTML Archivos para diseadores y Archivos para programadores As y todo, todava es posible mezclar HTML y cdigo si es necesario

.cs .aspx o .vb Lenguajes soportados Visual Basic VBScript es no administrado! JScript C# Nuevo lenguaje basado en componentes C++ Extensiones administradas para C++

Otros: Cobol, Smalltalk, ... Que respeten el Common Language Specification (CLS) Introduccin Diferentes archivos, distinguibles por su extensin Archivos ASP.NET estndar: .aspx o .ascx Servicios Web : .asmx

Archivos de cdigo: .cs, .vb, ... Configuracin: Config.web Aplicaciones Web : Global.asax Son todos Archivos de texto La forma ms rpida de comenzar Cambiar la extensin .asp por .aspx Sintaxis de la pgina 1/3 Directivas <%@ Page language=VB%>

Bloques de declaracin de cdigo Cdigo de conversin (Render) <% %> [cdigo en lnea o expresin] Sintaxis de controles HTML

Sintaxis de la pgina 2/3 Sintaxis de Controles Controles del Lado del servidor Propiedades del control del servidor Sub propiedad (del lado del cliente)

Vinculacin a eventos del control Sintaxis de la pgina 3/3 Expresin de vinculacin a datos <%# Expresin de vinculacin %> Marcadores de objetos del lado del servidor Directivas de inclusin en el servidor

Comentarios en el servidor <%-- Comentario --%> Ejemplo ASP.NET 1/2

Name:

Ejemplo ASP.NET 2/2 Ciclo de ejecucin .aspx Cliente

Servidor IIS Pide archivo aspx ASP.NET Runtime Analiza el .aspx Genera la clase Page Instancia los controles Respuesta Proceso de ejecucin Compilacin, la primera vez que se pide

una pgina Microsoft intermediate language (MSIL) Lenguaje de estilo Assembly Independiente de la CPU Provee una capa de independencia del hardware MSIL es ejecutado por el Motor Comn de ejecucin (common language runtime) Motor de ejecucin comn Compilador justo en el momento (JIT) Cdigo administrado Administracin de estados 1/2

Estado de una Aplicacin Que es una aplicacin? Archivos, pginas, mdulos, y cdigo ejecutable Un subdirectorio virtual y sus dependientes Variables de estado de la Aplicacin Informacin global Reglas de Implementacin Utilizacin de recursos del sistema Bloqueo y desbloqueo de la informacin global En entornos de mltiples hilos (multithreaded) se debe tener cuidado Se pierde el estado cuando el cliente se cierra No hay estado a travs de una Granja de servidores

Administracin de estado 2/2 Estado de sesin Que es una sesin? Restringida a una aplicacin lgica Contexto en el cual un cliente se conecta con un servidor Funcionalidad Solicitud de identificacin y calificacin Almacenar Datos entre llamadas Eventos de Sesin Liberacin de los datos de Sesin Proceso de estado en el Servidor .NET Seguridad 1/3

Motivos Prevenir el acceso a reas del Servidor Web Registrar y almacenar informacin relevante de los usuarios Configuracin de Seguridad Tag en el archivo Config.web Autenticacin, Autorizacin, Impersonalizacin Seguridad de acceso al cdigo es ste realmente el cdigo original del servidor?

Proteger el servidor de cdigo malicioso Seguridad 2/3 Autenticacin Validar credenciales del usuario Utilizar identidades de autenticacin Tipos de Autenticacin Windows, integrada con IE 5.0 Passport, servicios centralizados provistos por Microsoft Cookie, adjunto en el requerimiento Autorizacin

Determinar cuando es permitido un requerimiento Autorizacin por Archivo y por URL Seguridad 3/3 Impersonalizacin IE autentica al usuario Se pasa un token a la aplicacin ASP.NET ASP.NET lo impersona El acceso se permite de acuerdo a las asignaciones por NTFS

Seguridad de Acceso al cdigo Caracterstica del .NET Famework Verifica la identidad del cdigo y su origen Especifica las operaciones que el cdigo tiene permitido ejecutar Modelo de Eventos 1/2 Manejo de eventos a nivel de la Aplicacin Web Forms Modelo de delegados

Conecta un manejador de evento con un receptor Delegados simples y mltiples Los Delegados de eventos son Multicast Enlace de Evento Registra un manejador con el que enva el evento Modelo de Eventos 2/2 Evento disparado en el cliente, pero controlado en el servidor Cliente Web evento

mensaje Server Analiza el mensaje Llama al manejador apropiado manejador respuesta Ejemplos Ejemplo System.Web.UI.WebControls

Clase Button, evento pblico Click System.Web.UI Clase Page, evento pblico Load Eventos en C# ASP.NET C# protected void btnNext_Click(Object S, ImageClickEventArgs E) { [ ... do something ... ]

} Seccin 4: ASP.NET Avanzado Web Forms Controles del Servidor Trabajando con Datos Aplicaciones Web Migrando de ASP a ASP.NET Generalidades de Web Forms thisfile.aspx ... ...

1/2 thisfile.cs SubmitBtn_Click() { ... Generalidades de Web Forms 2/2 Crear pginas Web Programables Usando cualquier lenguaje .NET Provee un rico conjunto de controles del lado del servidor Modelo de Eventos de los Web Forms

Corren en cualquier navegador Partes visuales y lgicas de la Aplicacin System.Web.UI.WebControls Ejemplos Web Forms thisfile.cs: Protected void SubmitBtn_Click(Object S, EventArgs E) Message.Text=Hi & Name.Text End Sub thisfile.aspx: <%@ Page Language=C# Codebehind=thisfile.cs ... %>

Name:

Controles del Servidor Generalidades Web Forms Familias HTML

ASP.NET Validacin Usuario Mvil Vinculacin a Datos Clase Page Reunin de cdigo y contenido Familias 1/2 HTML Vinculados directamente con elementos HTML Atributos HTML

Ejemplos: HtmlAnchor (), HtmlTable (

) ASP.NET Controles abstractos No hay una relacin uno a uno con HTML Modelo de objetos predefinido Deteccin automtica del navegador Conjunto rico Ejemplo: TextBox () Familias 2/2

Validacin Controla los ingresos del usuario Diferentes tipos Ingreso requerido Comparacin, rango, patrn Definidos por el usuario Pagelets (Definidos por el usuario) Permite reutilizar funcionalidad Extensin .ascx Soporte a un modelo de objetos Controles Mobile Sintaxis Enfocado a ASP.NET

Nombre TextBox, DropDownList, etc. atributos Id=IDdelControl runat=server Ejemplo de Control del Servidor Controlado.aspx:

Controlado.cs: foreach (Ivalidator val in Page.Validators) { val.Validate(); } Cach Mejora el rendimiento de la aplicacin Web Cach de salida Almacena y obtiene pginas y objetos Cach de pgina Cach de fragmentos Reglas de expiracin APIs

Permite personalizar las acciones del Cach Aplicaciones Web ASP.NET define una aplicacin Web como la suma de todos los Archivos, pginas, manejadores (de eventos), mdulos, y cdigo ejecutable que pueden ser invocados o ejecutados en el entorno de un directorio virtual dado, en un Servidor Web Aplicaciones distribuidas Presentacin Web Form Capa de Negocio Internet

Servicio Web Base de Datos Migracin de ASP a ASP.NET ASP y ASP.NET pueden coexistir en el mismo servidor Puede usar caractersticas de ASP.NET Al migrar, los archivos ASP deben ser modificados Rendimiento Cdigo administrado vs. no administrado Vinculacin temprana vs. tarda

Temas de Migracin Estructura Bloques de cdigo y directivas Seguridad Seguridad ASP.NET como se describi antes Lenguajes C#, Visual Basic.NET Acceso a Datos ADO a ADO.NET Resumen

Elementos importantes de ASP.NET Configuracin Web Forms y Servicios Web Seguridad Administracin de estados Acceso a Datos Aplicaciones Web Migracin

Recently Viewed Presentations

  • NOTES: The Galactocentric Perspective The Milky Way: Herschel

    NOTES: The Galactocentric Perspective The Milky Way: Herschel

    If we were, the globular clusters hovering about the Milky Way should be evenly distributed. By finding the center of their orbits, he calculated the distance to the center of the galaxy, though dust made him wrong by a factor...
  • The Celestial Sphere The 88 official constellations cover

    The Celestial Sphere The 88 official constellations cover

    It is also known as Greenwich Mean Time (GMT) because 0° longitude is defined to pass through Greenwich, England It is the standard time used for astronomy and navigation around the world Standard Time & Time Zones Rapid train travel...
  • 03.05 Assignment Help Video

    03.05 Assignment Help Video

    Water cycle. Carbon cycle . Nitrogen cycle. Make your . own. diagram of the cycle that you chose. Your diagram must contain the following: Add arrows showing the flow of energy from one part of the cycle to the other....
  • An Architecture for Distributing the Computation of Software ...

    An Architecture for Distributing the Computation of Software ...

    Smalltalk "Pure" OOP C++ Encapsulation Polymorphism Inheritance Friends Java Encapsulation Polymorphism Inheritance C Supposedly not OOP GTK library button struct used as argument to generic click() function Commercial Off The Shelf Software Types of COTS Software End user applications ...
  • Travel Safety - University of California

    Travel Safety - University of California

    Travel Safety. UCOP Safety Meeting June 2010. Developed by Karen Hsi, UCOP EH&S Student Intern . The June 2010 Safety Meeting topic is Travel Safety. Many UCOP employees are required to travel. This training will provide UCOP employees with information...
  • Skaidrė 1 - emokykla.lt

    Skaidrė 1 - emokykla.lt

    c) Sense and Sensibility. 8. What story does the film tell? a) the story of the ship which sank on its first voyage to the USA. b) the story of a love affair between two of the passengers. c) the...
  • Show this card to all of your Healthcare

    Show this card to all of your Healthcare

    Endocrinopathies including hyper or hypothyroidism, adrenal insufficiency or diabetes (including diabetic ketoacidosis) Other toxicities including: cardiac, ocular, hematological, myopathies and neurological (including paresis, Guilian-Barré and encephalitis.
  • Early Life, East and West-Chapter 1

    Early Life, East and West-Chapter 1

    Early Life, East and West-Chapter 2. Native Americans of North America. The Eastern Woodlands. ... Some tribes that settled in this area were the Hopi and Zuni who later were known as the Pueblo. ... Kwakiutl used animal hides and...