Documente Academic
Documente Profesional
Documente Cultură
Implantacin de Sistemas
Gua 1 Acceso a Datos
Instructor: David A. Rodrguez 17/08/2013
Qu es ADO.NET?
ADO.NET es un conjunto de clases que exponen servicios de acceso a datos para el programador de .NET. ADO.NET ofrece abundancia de componentes para la creacin de aplicaciones de uso compartido de datos distribuidas. Constituye una parte integral de .NET Framework y proporciona acceso a datos relacionales, XML y de aplicaciones. ADO.NET. ADO.NET, permite que los desarrolladores de aplicaciones posean una herramienta, que les facilite la creacin de clientes de base de datos con un amplio manejo de la informacin almacena, todo con el objetivo de lograr crear sistemas empresariales y aplicaciones clientes que le faciliten a sus usuarios, el acceso eficiente a su informacin.
Arquitectura ADO.NET
El procesamientos de datos ha dependido principalmente de dos esquemas, los cuales permiten el acceso a datos tanto basado en conexin (Modo conectado) o basados sin conexin (Modo desconectado). ADO.net ofrece dos componentes que se pueden utilizar para acceder y obtener datos, de igual manera para realizar las operaciones respectivas sobres ellos, estos componentes son: - Proveedores de datos NET Framework: Son componentes diseados explcitamente para la manipulacin de datos y acceso rpido a datos de solo lectura y slo avance. - DataSet: Esta expresamente diseado para el acceso a datos independientes del origen de datos, dando como resultado la utilizacin de mltiples y distintos orgenes de datos, datos en formato XML o para una administracin local de la aplicacin. A continuacin se muestra la relacin existente entre el proveedor de datos de .NET Framework y un DataSet:
Proveedores de Datos
Los proveedores de datos de .NET Framework son utilizados para establecer una conexin a una base de datos, ejecutar comandos y recuperar resultados. Esos resultados se procesan directamente, se colocan en un DataSet con el fin de que el usuario pueda verlos cuando los necesite. Los proveedores de datos que son incluidos en .NET Framework son los siguientes: Proveedor de Datos Proveedor de Datos para SQL Server Proveedor de Datos para OLE DB Descripcin Proporciona acceso a datos para Microsoft SQL Server. Espacio de nombre: System.Data.SqlClient Proporciona acceso a datos que se exponen mediante OLE DB. Espacio de nombre: System.Data.OleDb. Proveedor de datos que se exponen mediante ODBC. Espacio de nombre: System.Data.Odbc. Proporciona acceso a orgenes de datos de Oracle. Espacio de nombre: System.Data.OracleClient. Proporciona acceso a datos para aplicaciones de Entity Data Model. Espacio de nombre: System.Data.EntityClient.
Proveedor de Datos para ODBC Proveedor de Datos para Oracle Proveedor de EntityClient
Cada uno de los proveedores consta de cuatro objetos principales, que son caractersticos de un proveedor de .NET Framework, los cuales son: Objeto Descripcin
DataReader
DataAdapter
DataSet
Un DataSet es la representacin de datos residentes en memoria, la cual proporciona un modelo de datos de modo desconectado. Esto quiere decir que un DataSet est compuesto por tablas relacionadas entre s con sus respectivas restricciones. La estructura de un Objeto DataSet es la siguiente: DataTableColletion: Contiene todos los objetos DataTable de un DataSet, Un DataTable se define en el espacio de nombre System.Data y representa una nica tabla de datos residentes en memoria. DataRelationCollection: Una relacin est representada por un objeto DataRelation, la cual asocia las filas de un DataTable con las filas de otro DataTable. ExtendedProperties: Es una PropertyCollection en la que puede colocar informacin personalizada, como la instruccin SELECT que se utilizo para generar el conjunto de datos.
Entity Framework
ADO.NET Entity Framework permite a los desarrolladores crear aplicaciones de acceso a datos programando con un modelo de aplicaciones conceptuales en lugar de programar directamente con un esquema relacional. Entity Framework incluye un proveedor de datos de EntityClient. Este proveedor administra las conexiones, traduce las consultas de entidad en consultas especficas de origen de datos y
Desarrollo de Ejemplo
1. Creando proyecto y Agregando las clases de conexin Iniciamos creando un proyecto web vacio, para ello navegamos en la siguiente opciones Archivo->Nuevo->Proyecto Web. Seleccionamos la opcin de un proyecto web vacio le colocamos el nombre de SysCA; cuando tengamos el proyecto web ya creado, nos vamos al explorador de soluciones y damos click derecho al proyecto y agregamos un nuevo tem, para nuestro caso agregaremos una clase y la llamaremos clsSQLServer.
Luego de tener nuestra clase agregamos y realizamos la codificacin respectiva: Ver el Archivo clsSQLServer.vb El siguiente paso ser agregar nuestra clase de implementacin de nuestra clase clsSQLServer.vb, para ello agregamos una nueva clase, dando click derecho el proyecto y seleccionamos agregar nuevo elemento. Seleccionamos el archivo de clase y colocamos el nombre de clsSQLImplementacion. Este archivo contendr todas las sentencias necesarias para manipular la informacin de la base de datos, la codificacin ser la siguiente: Ver el Archivo clsSQLImplementacion.vb.
La codificacin ser la siguiente: ver el archivo clsEntidadGrado.vb, clsEntidadPersona.vb, clsEntidadAlumno.vb 3. Agregando un Mster Page. En este proceso agregaremos nuestra pgina maestra de nuestro sitio SysCA, Una Mster Page o Pgina Principal es una estructura base para un conjunto de pginas pertenecientes a un mismo sitio Web; para agregar un Master Page nos dirigimos a nuestro Proyecto y damos click derecho, en las opciones seleccionamos Nuevo Elemento (New Item) y buscamos el elemento Mster Page, le colocaremos el nombre de MasterSysca.master.
Al agregar el Mster Page, se genera automticamente dentro de la pgina un control llamado ContentPlaceHolder la cual define una regin por contenido en una pgina maestra de ASP.NET. Esto nos permitir ingresar nuevas pginas que heredaran el formato de nuestra pgina maestra, para realizar este proceso solamente necesitamos dar click derecho en dicho control y vamos a la opcin Agregar Pagina de Contenido(Add Content Page) se nos generara una pgina llamada Default.aspx le colocamos el nombre de ListGrado.aspx y le agregaremos los siguientes controles:
1 <Div>
1 GridView
3 Buttons
1 <Div>
2 Labels 2 TextBoxs
2 Buttons Luego de tener ya creadas nuestras vistas solamente queda codificar los Code-behind de cada una de nuestras pginas, para ello visualizaremos los siguientes archivos que se nos han facilitado: Grados.aspx.vb, ListGrado.aspx.vb
El modelo Code-behind
Microsoft recomienda que para realizar programacin dinmica se use el modelo code-behind, o de respaldo, que coloca el cdigo en un archivo separado o en una etiqueta de script especialmente diseada. Los nombres de los archivos code-behind estn basados en el nombre del archivo ASPX tales como MiPagina.aspx.cs o MiPagina.aspx.vb (esta prctica se realiza automticamente en Microsoft Visual Studio y otros entornos de desarrollo). Cuando se usa este estilo de programacin, el desarrollador escribe el cdigo correspondiente a diferentes eventos, como la carga de la pgina, o el clic en un control, en vez de un recorrido lineal a travs del documento.
10
Para este ejemplo crearemos un nuevo proyecto web vacio, este llevara el nombre de syscaEntity. Para iniciar el desarrollo partiremos que se a generado ya una conexin a la base de datos sysca desde el explorador de servidores. Teniendo nuestra conexin realizada agregaremos un Entity Data Model, dando click derecho en nuestro proyecto, en las opciones seleccionamos Nuevo Elemento (New Item) y seleccionamos dicho elemento.
11
En la siguiente ventana nos solicitara que seleccionemos de donde se obtendr el contenido de nuestro modelo, para nuestro caso ser la opcin Generar de una Base de Datos.
En la ventana siguiente seleccionaremos la cadena de conexin que hemos creado desde el Explorador de Servidores, Si hemos agregado un archivo .mdf, nos preguntara que si deseamos almacenar dicho archivo en la carpeta de nuestro proyecto web, en este proyecto que estamos creando lo dejaremos dentro de nuestra carpeta.
12
Seleccionamos luego los objetos que queremos incluir en el mapeo de nuestra base de datos, seleccionamos todas las tablas; si existe algn otro objeto lo desmarcamos y dejamos simplemente las tablas de la base de datos.
Un punto muy importante es recordar el Espacio de nombre que tendr nuestro modelo en este caso el espacio de nombres, de nuestro modelo, es syscaModel. Ahora simplemente presionamos el botn Finalizar(Finish) y podremos observar nuestro diagrama de clases que asido el resultado del mapeo de nuestra base de datos, el archivo que contiene este diagrama posee la extensin .edmx.
13
Luego realizaremos los mismos pasos que en el ejemplo anterior; agregaremos un Mster Page para nuestro proyecto, adems agregaremos un Pgina de contenido donde visualizaremos la lista de los grados, tomando como referencia el diseo del ejemplo anterior.
14
Luego de codificar ejecutamos con la combinacin de teclas ctrl+F5 y obtendramos el siguiente resultado.
Como podemos observar el Acceso a Datos utilizando la tecnologa de Entity Framework nos permite la optimizacin de los tiempos a nivel de desarrollo de la lgica del negocio, pero se vuelve muy difcil lograr tener un control de cada una de las acciones ya que todo queda bajo la administracin de dicho Framework.
15
16