desarrollo de una aplicación web sobre tecnología microsoft.net trabajo de campo ii autor: david...

20
Desarrollo de una Desarrollo de una Aplicación Web sobre Aplicación Web sobre tecnología Microsoft tecnología Microsoft .NET .NET Trabajo de Campo II Trabajo de Campo II Autor: David Andrada Autor: David Andrada

Upload: carlitos-mosso

Post on 01-Mar-2015

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Desarrollo de una Desarrollo de una Aplicación Web sobre Aplicación Web sobre

tecnología Microsoft .NETtecnología Microsoft .NET

Trabajo de Campo IITrabajo de Campo II

Autor: David AndradaAutor: David Andrada

Page 2: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

TemarioTemario

Creando una Aplicación Web .NETCreando una Aplicación Web .NET

Ejemplo: AgendaDotNetEjemplo: AgendaDotNet

Capa de PresentaciónCapa de Presentación

Capa de NegociosCapa de Negocios

Capa de Acceso a DatosCapa de Acceso a Datos

Capa de Conexión a SQL ServerCapa de Conexión a SQL Server

Page 3: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Creando una Aplicación Web .NETCreando una Aplicación Web .NET

Crear una Aplicación WebCrear una Aplicación Web

Configurar una Aplicación Web Configurar una Aplicación Web

Acceder a datos usando una Aplicación Acceder a datos usando una Aplicación WebWeb

Page 4: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Tema: Crear una Aplicación WebTema: Crear una Aplicación Web

¿Qué es ASP.NET?¿Qué es ASP.NET?

¿Qué es una Aplicación Web?¿Qué es una Aplicación Web?

Cómo crear una Aplicación WebCómo crear una Aplicación Web

Componentes de una Aplicación WebComponentes de una Aplicación Web

Cómo agregar componentes a una Cómo agregar componentes a una Aplicación WebAplicación Web

Cómo manejar Eventos en una Aplicación Cómo manejar Eventos en una Aplicación WebWeb

Page 5: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

¿Qué es ASP.NET?¿Qué es ASP.NET?Sucesor más evolucionado de las Active Server Sucesor más evolucionado de las Active Server Pages (ASP)Pages (ASP)Páginas dinámicas que pueden acceder a Páginas dinámicas que pueden acceder a recursos del servidorrecursos del servidorProcesamiento del lado del servidor (Server-Procesamiento del lado del servidor (Server-side processing)side processing)Independiente del lenguaje de programación Independiente del lenguaje de programación (C#, Visual Basic .Net) (C#, Visual Basic .Net) Independiente del navegador (IE, Netscape) Independiente del navegador (IE, Netscape) Soporte de Servicios Web para crear Soporte de Servicios Web para crear aplicaciones web distribuídasaplicaciones web distribuídas

Page 6: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

¿Qué es una Aplicación Web?¿Qué es una Aplicación Web?

Basada en la tecnología ASP.NET para crear Basada en la tecnología ASP.NET para crear poderosas páginas web dinámicaspoderosas páginas web dinámicasCompatible con cualquier navegador o Compatible con cualquier navegador o dispositivo mobildispositivo mobilCompatible con cualquier lenguaje soportado Compatible con cualquier lenguaje soportado por el common language runtime (CLR)por el common language runtime (CLR)Permite la separación entre el código y el diseño Permite la separación entre el código y el diseño de una páginade una páginaSoporta un poderoso set de controlesSoporta un poderoso set de controlesPermite preservar el estado (view state) de una Permite preservar el estado (view state) de una página web entre solicitudes (requests)página web entre solicitudes (requests)

Page 7: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Visual Studio .Net IDEVisual Studio .Net IDE

Archivos en el Solution Explorer

Archivos en el Solution Explorer

PropiedadesPropiedades

ControlesControles Web FormWeb Form

Page 8: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Componentes de una AplicaciónComponentes de una AplicaciónComponente VisualComponente Visual

Vista de diseñoVista de diseño Vista de HTMLVista de HTML

CodeBehindCodeBehind

Class WebFormClass WebForm

Bienvenido!Bienvenido!

Nombre:Clave:

OK

Componente Visual

Componente Visual

WebForm.asp.cs

WebForm.aspx

CodeBehindCodeBehind

WebForm

Ambos archivos constituyen un Web Form

Bienvenido!Bienvenido!

Nombre:Clave:

OK

Page 9: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Cómo manejar Eventos en una Aplicación WebCómo manejar Eventos en una Aplicación Web

Muchos eventos son disparados por la acción del Muchos eventos son disparados por la acción del usuario en el navegadorusuario en el navegadorEl código para manejar el evento es ejecutado en el El código para manejar el evento es ejecutado en el servidor (Server-side) servidor (Server-side) Al finalizar la ejecución del código, la página resultante Al finalizar la ejecución del código, la página resultante es envíada nuevamente al navegadores envíada nuevamente al navegador

private void Button1_Click(object private void Button1_Click(object sender,System.EventArgs e) {sender,System.EventArgs e) {//(………)//(………)

}}

private void Button1_Click(object private void Button1_Click(object sender,System.EventArgs e) {sender,System.EventArgs e) {//(………)//(………)

}}

Page 10: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Configurar una Aplicación WebConfigurar una Aplicación Web

<?xml version="1.0" encoding="utf-8" ?><configuration>

<system.web><compilation defaultLanguage="c#"

debug="true"/><identity impersonate="true"

userName="DOMAIN\User"

password="123dfget252"/><authentication mode="Forms">

<forms name="AdvWorks" loginUrl="logon.aspx"/>

</authentication><authorization>

<deny users="?"/></authorization>

<?xml version="1.0" encoding="utf-8" ?><configuration>

<system.web><compilation defaultLanguage="c#"

debug="true"/><identity impersonate="true"

userName="DOMAIN\User"

password="123dfget252"/><authentication mode="Forms">

<forms name="AdvWorks" loginUrl="logon.aspx"/>

</authentication><authorization>

<deny users="?"/></authorization>

web.configweb.config

Page 11: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Cómo crear un Proyecto WebCómo crear un Proyecto Web

Seleccionar Archivo -> Nuevo -> Proyecto

Page 12: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Cómo conectarse a un SQL ServerCómo conectarse a un SQL Server

Incluír la librería System.Data.SqlClientIncluír la librería System.Data.SqlClient

Crear y configurar un objeto SqlConnectionCrear y configurar un objeto SqlConnection

SqlConnection oConn = new SqlConnection();string sConnString =

"SERVER=(local);UID=usuario;PWD=password;DATABASE=db;";

oConn.ConnectionString = sConnString;oConn.Open();

SqlConnection oConn = new SqlConnection();string sConnString =

"SERVER=(local);UID=usuario;PWD=password;DATABASE=db;";

oConn.ConnectionString = sConnString;oConn.Open();

Page 13: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Cómo hacer una consulta a un SQL ServerCómo hacer una consulta a un SQL Server

Incluír la librería System.Data.SqlClientIncluír la librería System.Data.SqlClient

Crear y configurar un objeto SqlCommand, Crear y configurar un objeto SqlCommand, SqlAdapter y DatasetSqlAdapter y Dataset

SqlDataAdapter oAdapter = new SqlDataAdapter();SqlCommand oComm = new SqlCommand();DataSet ds = new DataSet();oComm.CommandType = CommandType.Text;oComm.CommandText = "SELECT * FROM Usuario";oComm.Connection = oConn;oAdapter.SelectCommand = oComm;oAdapter.Fill(ds);

SqlDataAdapter oAdapter = new SqlDataAdapter();SqlCommand oComm = new SqlCommand();DataSet ds = new DataSet();oComm.CommandType = CommandType.Text;oComm.CommandText = "SELECT * FROM Usuario";oComm.Connection = oConn;oAdapter.SelectCommand = oComm;oAdapter.Fill(ds);

Page 14: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Cómo ejecutar un Stored Procedure en un Cómo ejecutar un Stored Procedure en un SQL ServerSQL Server

Incluír la librería System.Data.SqlClientIncluír la librería System.Data.SqlClientCrear y configurar un objeto SqlCommandCrear y configurar un objeto SqlCommand

SqlCommand oComm = new SqlCommand();oComm.CommandType = CommandType.StoredProcedure;oComm.Connection = oConn;oComm.CommandText = "Usuario_Alta";oComm.Parameters.Add("@usr",“anibal");oComm.Parameters.Add("@pwd",“secreto");oComm.Parameters.Add("@nombre",“Anibal Hugo");oComm.ExecuteNonQuery();

SqlCommand oComm = new SqlCommand();oComm.CommandType = CommandType.StoredProcedure;oComm.Connection = oConn;oComm.CommandText = "Usuario_Alta";oComm.Parameters.Add("@usr",“anibal");oComm.Parameters.Add("@pwd",“secreto");oComm.Parameters.Add("@nombre",“Anibal Hugo");oComm.ExecuteNonQuery();

Page 15: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Ejemplo: AgendaDotNetEjemplo: AgendaDotNet

Sevidor Web: Internet Information Server (IIS)Sevidor Web: Internet Information Server (IIS)

Base de Datos: SQL Server 2000Base de Datos: SQL Server 2000

Aplicación Web ASP.NETAplicación Web ASP.NET

Lenguaje utilizado: C#Lenguaje utilizado: C#

Page 16: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Diagrama en CapasDiagrama en Capas

+BuscarContactos()+BuscarSeleccionado()+Elimina()+Modifica()+Alta()

#id#nombre#apellido#direccion#idUsuario#email#fax#telefono#celular#provincia#codigoPostal#ciudad

Contacto

+Valido()+Alta()

#id#user#password#nombre#nivel

Usuario

Paquete: LogicaNegocioPaquete: DataLayer

+BuscarContactos()+BuscarSeleccionado()+Elimina()+Modifica()+Alta()

ContactoDL

+Valido()+Alta()+UserNameValido()

UsuarioDL

Paquete: ConectorSQL

+DarRegistros()+ExecComando()+ExecSP()

SQLServer

Paquete: AgendaDotNet

Admin

Estilos.css

Alta

Login

Buscar

Agenda

Web.config

Page 17: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Capa de PresentaciónCapa de PresentaciónTipo de Proyecto: ASP.NET Web ApplicationTipo de Proyecto: ASP.NET Web Application

Comunicada con: LogicaNegocioComunicada con: LogicaNegocio

Un form ASP.NET está formado por dos archivos:Un form ASP.NET está formado por dos archivos: .ASPX (HTML).ASPX (HTML) Los más comunes .cs o .vb (CodeBehind)Los más comunes .cs o .vb (CodeBehind)

Paquete: AgendaDotNet

Admin

Estilos.css

Alta Login

Buscar

Agenda

Web.config

Page 18: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Capa de NegociosCapa de NegociosTipo de Proyecto: Class LibraryTipo de Proyecto: Class Library

Comunicada con: DataLayerComunicada con: DataLayer

+BuscarContactos()+BuscarSeleccionado()+Elimina()+Modifica()+Alta()

#id#nombre#apellido#direccion#idUsuario#email#fax#telefono#celular#provincia#codigoPostal#ciudad

Contacto

+Valido()+Alta()

#id#user#password#nombre#nivel

Usuario

Paquete: LogicaNegocio

Page 19: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Capa de Acceso a DatosCapa de Acceso a Datos

Tipo de Proyecto: Class LibraryTipo de Proyecto: Class LibraryComunicada con: ConectorSQLComunicada con: ConectorSQLPatrón que implementa: Table Data GatewayPatrón que implementa: Table Data Gateway

Paquete: DataLayer

+BuscarContactos()+BuscarSeleccionado()+Elimina()+Modifica()+Alta()

ContactoDL

+Valido()+Alta()+UserNameValido()

UsuarioDL

Page 20: Desarrollo de una Aplicación Web sobre tecnología Microsoft.NET Trabajo de Campo II Autor: David Andrada

Capa de Conexión a SQL ServerCapa de Conexión a SQL ServerTipo de Proyecto: Class LibraryTipo de Proyecto: Class LibraryUtiliza: acceso a través de ADO.NET (SqlClient)Utiliza: acceso a través de ADO.NET (SqlClient)Todos los Métodos son EstáticosTodos los Métodos son EstáticosEs altamente reutilizableEs altamente reutilizableSimplifica los pasos de conexión con la base de datosSimplifica los pasos de conexión con la base de datos

Paquete: ConectorSQL

+DarRegistros()+ExecComando()+ExecSP()

SQLServer