Programación de aplicaciones con ASP.NET

Slides:



Advertisements
Presentaciones similares
Presentación de Visual Web Developer 2005 Express Edition Alfonso Goyeneche Torres Presidencia Nacional Comunidad Académica Microsoft Junta Directiva Nacional.
Advertisements

ALMACENAMIENTO Y OBTENCIÓN DE DATOS CON ADO.NET. ACCEDER A DATOS CON ADO.NET Tres niveles: Tres niveles: El almacenamiento físico de datos. Puede ser.
ASP.NET CON C SHARP.
Curso de PHP Tema 5: Sesiones.
Nuevas Características de Seguridad en ASP.NET 2.0
ASP.NET Con Visual Studio.NET
Bloques es Aplicación Nombre: Rodrigo Traverso
Conceptos fundamentales de ASP.NET
Estrella 2 Introducción al desarrollo de aplicaciones Web con ASP.NET
Algunos tips en Seguridad ASP.NET 2.0
Los objetivos de esta presentación
Componentes de ASP.NET Leonardo Diez Dolinski Servicios Profesionales Danysoft.
Implementación de SQL Server 2000 Reporting Services
Planificación y despliegue de Office Sharepoint Server 2007 Rubén Alonso Cebrián
Microsoft Sql Server 2000 Reporting Services Ruben Alonso Cebrian Código: HOL-SQL03.
Unidad 2 IDE Visual Studio.Net [UTN - Tecnologías de desarrollo de software IDE] [2009]
Red Social: “Un millón de Amigos”.
ASP.NET Daniel A. Seara Director Regional MSDN Buenos Aires – ARGENTINA NDSoft.
Administración del estado
Crear un formulario Web Form con Microsoft ASP.NET
Introducción a ASP.NET.
Seguridad en aplicaciones Web con Microsoft ASP.NET
Módulo 2: Uso de Microsoft Visual Studio .NET
Agregar código a un formulario Web Form con Microsoft ASP.NET
Desarrollo de una Aplicación Web sobre tecnología Microsoft .NET
Agenda Conceptos Claves.
Modelando aplicaciones
Expert.NET Development Programando Web para principiantes 2. La leyenda continua. Por Jonas Stawski
Especialista en Business Intelligence Reporting Services SSRS (Sesión 16) Microsoft SQL Server 2008 R2 (2013) Suscribase a o escríbanos.
Acceso a Datos avanzado
"java del lado del servidor" Servlet y JSP Java Server Pages.
INFOPATH.
OBJETO REQUEST. El objeto Request Por qué el objeto request Funcionamiento Colecciones: – Transferencia de variables por URL –Transferencia de variables.
Arquitectura de la Aplicación
Curso de Java y Aplicaciones Web
Implementación de arquitecturas distribuidas
MSDN Hands On Noviembre 2002 Bienvenidos! TUTOR. Qué es Microsoft MSDN? Programa de Actualización tecnológica para analistas, desarrolladores Eventos.
Seguridad en ASP.NET Daniel Laco
Acceso a datos y paso de datos entre capas
Desarrollo de Aplicación para VVC
Planificación y despliegue de Office Sharepoint Server 2007 Rubén Alonso Cebrián
Microsoft Office System Recopilando Información y Fomentando la Colaboración a través de Formularios Electrónicos José Alania Valdez Especialista en Tecnologías.
Carlos Walzer Vemn Sistemas Como crear un sitio con ASP.NET.
Módulo 1: Primeros Pasos
BackBone JS Una introducción.
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
Introducción ASP .NET.
Características Técnicas
Plataforma Microsoft.NET
Introducción a ASP.NET.
Sistema La Plata Módulo I INTRODUCCION A APLICACIONES WEB.
Célula Sesión 3 Trabajando con Objetos Web 11 de Septiembre de 2004.
Herramientas del desarrollador Experiencias del usuario
Taller 5: Trabajo con Plantillas y uso de tecnología Ajax.
Ing. CIP Fabián Silva Alvarado
Web Services Daniel Seara. Fundamentos Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización.
SQL SERVER Reporting Services
F RAMEWORKS DE DESARROLLO JAVA,.NET Deisy Pérez Sánchez.
InfoPath Ventajas y Uso.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
Movilidad en.NET … foco en ASP.NET Mobile Ing. Gabriel Fogante Program Manager Neodynamicwww.neodynamic.com.
Lenguajes de Programación
David Salgado MVP C# David Salgado MVP C# Desarrollo Web con ASP.NET.
Clase 6 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
Diseño de Servicios Web Internet Information Server © Copyright 2003 Víctor ROBLES FORCADA
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
Clase 5 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
Cristian Fonnegra Marin
CONTRATOS DE CLIENTES Orlando Sedamano Cornejo Marco Bustinza
Transcripción de la presentación:

Programación de aplicaciones con ASP.NET Bienvenidos Programación de aplicaciones con ASP.NET Daniel Laco Carlos Walzer

Agenda Objetivo de la Conferencia ¿Qué son los Starter Kits? Data Access Application Block (DAAB) ¿Cómo se procesa un WebForm? Seguridad en ASP.NET Creación de Controles de Usuario Nivel de la conferencia: Básico / Intermedio (100-200)

Objetivos Mostrar una aplicación Ver el acceso a datos Entender el modelo de procesamiento de un WebForm Saber como se maneja la seguridad Crear Controles de Usuario

Starter Kits

Starter Kits ¿Qué son los Starter Kits? Se pueden bajar de www.asp.net El elegido para hoy: “TimeTracker”

Data Access Application Block (DAAB)

Data Access Application Block Componente de Acceso a datos Todo el código fuente disponible Arquitectura recomendada por Microsoft Funciones estáticas (static-shared) Transacciones

SqlHelperParameterCache Modelo Cliente DAAB Sentencia SQL o Proc. Almacenado ExecuteNonQuery ExecuteDataset ExecuteReader ExecuteScalar ExecuteXmlReader SqlHelper SQL int Dataset SqlDataReader object XmlReader CacheParameterSet GetCachedParameterSet GetSpParamterSet SqlHelperParameterCache SqlParameter Array

SQLHelper Métodos Conexión Tipos Sentencias Parámetros ExecuteNonQuery ExecuteDataset ExecuteReader ExecuteScalar ExecuteXmlReader Conexión Tipos Sentencias Parámetros

Recursos Resumen - DAAB Acceso a datos robusta y eficiente Fácilmente extensible Recursos msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/ html/daab-rm.asp

¿Cómo se procesa un WebForm?

Modelo Web Request (Pedido) Cliente Web Server Response (Respuesta)

Modelo de Eventos Web Forms Evento disparado en el Cliente Atrapado en el servidor Request (Pedido) Cliente Web Server evento Analiza mensaje Llama al manejador apropiado manejador Response (Respuesta)

Como se implementa Form ViewState Eventos POST Page.IsPostBack Base64 EnableViewState No siempre es necesario Eventos Post-Back Cached events (retenidos) AutoPostBack Validación

Ciclo de Vida de un Web Form Inicialización de Objetos Carga ViewState Procesa datos del Post Carga Objetos Lanza los Eventos Cached Lanza el Evento Post-Back PreRender Graba ViewState Render Disposal

Recursos Resumen - WebForms Nos acerca al modelo de Win32 Administre el Post-Back Round-Trips ViewState Recursos msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/ vbconwebformspageprocessingstages.asp

Seguridad

Servicios de Seguridad Autenticación y autorización en ASP.NET: Extensible y personalizable Esquema de Autenticación transparente Modelo simple de desarrollo Soporte para autorizaciones granulares Usa CLR Evidence Based Security Soporta seguridad a nivel de aplicación

Windows Authentication (vía IIS) Autenticación - Tipos Windows Authentication (vía IIS) Basic, Digest, NTLM, Kerberos, IIS Certificate Autenticación basada en Formularios (Cookie) Verificación de credencial a nivel de Aplicación Microsoft Passport®

Autenticación basada en Formularios Fácil de implementar ASP .NET provee redirección Pasos Configure IIS para que permita usuarios anónimos (típicamente) Use SSL! Configure ASP.NET con autenticación por cookie Escriba su página de Login <authentication mode= "Forms"> <forms name=".ASPXAUTH" loginUrl="login.aspx" protection="all" timeout="30" path="/" /> </authentication>

Autorización Web Personalizada Escenarios: Acceso basado en reglas del negocio Acceso basado en comportamientos variables (Ej.: límite de acceso por día, etc.) Modelo simple de desarrollo Maneja el evento AuthenticateRequest A nivel de aplicación (global.asax) o Http Module (implementar IHttpModule)

Proceso de Request en ASP.NET Page ASP.NET Service HTTP Handler Application HTTP Module Http Context HTTP Module Global.asax Código .NET ASP.NET Runtime Código Nativo Host (IIS)

Eventos por Request Eventos por Request (en orden): Application_BeginRequest Application_AuthenticateRequest <Este es el que nos interesa hoy> Application_AuthorizeRequest Application_ResolveRequestCache Application_AcquireRequestState Application_PreRequestHandlerExecute Application_PostRequestHandlerExecute Application_ReleaseRequestState Application_UpdateRequestCache Application_EndRequest

Indentidad del Request Impersonalización Se ejecuta con el contexto de seguridad de la entidad que hace el Request Configurable en ASP.NET <system.web> <identity impersonate="true" /> </system.web>

Roles personalizados Maneja el evento authentication IPrincipal public void WindowsAuthentication_OnAuthenticate( Object src, WindowsAuthenticationEvent e) { // reemplace HttpContext Principal e.Context.User = new MyPrincipal(e.Identity); }

Resumen - Seguridad Seguridad personalizada Reemplace HttpContext.User con un objeto personalizado de IPrincipal o GenericPrincipal

Recursos - Seguridad Autenticación en .NET – Guía de Seguridad: www.microsoft.com/spain/msdn/articulos/archivo/261001/voices/authaspdotnet.asp Seguridad .NET en MSDN: msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28001369

INTERVALO 10’

Controles del Servidor

¿Qué es un Control ASP.NET? Un componente que se ejecuta en el servidor y expone interfaz Web… Propiedades, métodos, eventos Se muestra como HTML, XML, script, etc. Procesa acciones del usuario y datos Puede representar elementos HTML o abstracciones de alto nivel Hablando técnicamente… Es implementado como una clase .NET Deriva desde System.Web.UI.Control, o de System.Web.UI.WebControls.WebControl

Tipos de Controles de Usuario Web User Controls Fáciles de hacer Reemplazan antiguos Includes Solo para una aplicación Custom Controls (compuestos) Composite Custom Control Rendered Custom Control Compilable en un Assembly Soporte para diseño en Visual Studio .NET (toolbox, property page)

Persistencia basada en Tags <%@ Register%> tagPrefix tagName Namespace Src Assembly <%@ Register TagPrefix="Acme" Tagname=“List" Src=“List.ascx" %> Tags interpretados en tiempo de ejecución Crea una instancia del Control Inicializa los valores de las propiedades <acme:List id=l1 liststyle=number runat=server> <Items> <acme:ListItem>first item</acme:ListItem> <acme:ListItem>second item</acme:ListItem> <acme:ListItem>third item</acme:ListItem> </Items> </acme:List>

Usando Controles en tiempo de ejecución Objetos .NET en código Controles en los eventos de una página Page_Load, Button1_Click, etc. protected AcmeControls.List l1; void Page_Load(object send, EventArgs e) { l1.Items.Add(“fourth item”); l1.ForeColor = Color.Blue; }

Resumen - Controles Los Controles proveen un mecanismo de abstracción y reusabilidad para aplicaciones Web Marco muy rico: Mantener los estados a través de los post Enviar eventos desde el cliente Implementar funcionalidad en el cliente mediante script Controles derivados Composición de controles

Recursos - Controles Gotdotnet: ASP.NET: www.gotdotnet.com ASP.NET: www.asp.net WebControls: msdn.microsoft.com/library/default.asp?url=/workshop/webcontrols/ webcontrols_entry.asp

Noticias de .NET en español Resumen final Disponemos de un componente para Acceso a datos Entender como funciona el modelo de WebForms Crear nuestro Principal para autenticaciones personalizadas Usar Controles para reutilizar el código Noticias de .NET en español www.microsoft.com/spanish/msdn/noticias/default.asp

¿Preguntas? Por favor, completar el formulario de evaluación Te llevás un CD con un curso interactivo de ASP.NET y Visual C# En 10 días, esta ppt en línea www.microsoft.com/argentina/msdn

Muchas gracias por tu participación! Daniel Laco daniell@vemn.com.ar Carlos Walzer carlosw@vemn.com.ar

Programa Desarrollador Cinco Estrellas Hacele un upgrade a tu currículum Si ya tenés tu estrella, pasá al salón San Telmo

Tu potencial. Nuestra pasión.®