Para comenzar vamos a hablar sobre un par de conceptos importantes de WCF Data Services.
Según el MSDN, estos Data Services nos permiten exponer datos en la web por medio del Open Data Protocol (OData).
Este protocolo publica la información como como recursos direccionables a través de identificadores uniformes de recursos (URI), es decir que le asigna una única url al recurso que queremos exponer, para su fácil identificación.
WCF Data Services también incluye dos conjuntos de bibliotecas de cliente, uno para las aplicaciones cliente de .NET Framework generales y otro específicamente para las aplicaciones basadas en Silverlight.
WCF Data Services también incluye dos conjuntos de bibliotecas de cliente, uno para las aplicaciones cliente de .NET Framework generales y otro específicamente para las aplicaciones basadas en Silverlight.
WCF Data Services usa el protocolo de OData para direccionar y actualizar los recursos. De esta manera, puede tener acceso a estos servicios desde cualquier cliente que admita OData .
Para esta oportunidad, utilizaremos WFC Data Services para exponer entidades que estén dentro de nuestro modelo de Datos ADO .NET.
Después de hablar sobre conceptos iniciales, vamos a la prática:
Para poder comenzar, primero nos vamos a abrir SQL Server para poder crear una base de datos, la cual nos servirá para el desarrollo del ejemplo:
Para poder comenzar, primero nos vamos a abrir SQL Server para poder crear una base de datos, la cual nos servirá para el desarrollo del ejemplo:
Después de haber creado la BD, le agregamos las tablas que se muestran a continuación, recordando que agregar las claves primarias con auto-identidad incremental en 1, además crearemos el diagrama para formar una relación:
Cuando ya tengamos lista nuestra base de datos, ahora nos toca trabajar del lado de Visual Studio, primero abrimos el programa para poder agregar una solución en blanco a la cual le llamaremos SYM.Pedidos.
Cuando ya tengamos lista nuestra base de datos, ahora nos toca trabajar del lado de Visual Studio, primero abrimos el programa para poder agregar una solución en blanco a la cual le llamaremos SYM.Pedidos.
Bueno, cuando la solución está creada, lo primero que tenemos que hacer es agregar un nuevo proyecto, será de tipo "Class Library", el cual contendrá nuestro modelo de entidades, tal y como se muestra en la imagen le llamaremos SYM.AccesoADatos
Seguidamente, comenzamos a crear la conección para poder acceder a los datos de nuestra base:
Primero nos vamos al "Server Explorer", en la cual nos aparecerán las conecciones que tengamos (en mi caso no tengo ninguna), después damos click derecho sobre "Data Connection", para buscar dale click a la opción "Add Connection".
En la imagen siguiente, se nos muestra la ventana para poder agregar una conexión, el detalle es que si observan el nombre del servidor con el cual nos queremos conectar, solo le hemos colocado un punto (.), eso indica que nos conectaremos al servidor local de nuestro equipo.
En esta otra imagen mostramos como nos deberá de quedar la conexión en nuestro explorador de servidores.
Como último paso para dejar terminada nuestra capa de Acceso A Datos, agregamos Modelo De Entidad De Datos:
Cuando demos click en botón "Add", nos aparecerá el asistente para poder generar nuestro modelo, el cuál en la primera pantalla nos aparecerá las opciones si queremos generar nuestro modelo desde la base de datos, o si queremos crear un modelo vacío, para esta oportunidad, lo generaremos a partir desde la base de datos que creamos hace un momento:
En la siguiente pantalla de nuestro asistente, nos pedirá la conexión que se utilizará para poder acceder a la base de datos, que también ya la creamos, por lo tanto si desplegamos el combo, se nos desplegarán todas las conexiones existentes en el equipo (En el caso de tener varias) elegimos la conexión hacia nuestra base de datos, en caso de no estar chequeado la casilla de "Save entity connection string in App.config as:" la chequeamos y le dejamos el nombre que nos muestra por defecto, aunque sin ningún problema podemos cambiarlo, después damos click al botón siguiente:
En la siguiente y última pantalla de nuestro asistente, tenemos que seleccionar los objetos que queremos obtener desde nuestra base de datos, primero debemos de desplegar la pestaña que dice "Tables", para después poder chequear las dos tablas contenidas dentro de nuestra BD, seguidamente chequeamos la opción que dice "Pluralize or Singularize Generated Object Names" (Pluralizar o singularizar los nombres de los objetos generados), después si queremos le cambiamos el nombre al namespace del modelo, y después pulsamos el botón "Finish".
Ahora solo resta cambiar una propiedad en específico de nuestras entidades, llamada "Entity Set Name", la cual existe la posibilidad de que el nombre en plural no sea el correcto, por lo que lo corregiremos de la siguiente forma:
En el modelo de Datos, le damos clic derecho a nuestra entidad, y ubicamos la propiedad Entity Set Name, y le colocamos el nombre pluralizado de nuestra entidad tal y como se ve en la siguiente imagen:
Recuerden que este paso lo debemos de realizar por cada entidad que tengamos dentro de nuestro modelo de datos.
Hasta aquí hemos completado la primera parte de este tema, que se relaciona con la capa de acceso a datos de nuestra solución. En publicaciones posteriores estaremos completando el desarrollo del proyecto.
Seguidamente, comenzamos a crear la conección para poder acceder a los datos de nuestra base:
Primero nos vamos al "Server Explorer", en la cual nos aparecerán las conecciones que tengamos (en mi caso no tengo ninguna), después damos click derecho sobre "Data Connection", para buscar dale click a la opción "Add Connection".
En la imagen siguiente, se nos muestra la ventana para poder agregar una conexión, el detalle es que si observan el nombre del servidor con el cual nos queremos conectar, solo le hemos colocado un punto (.), eso indica que nos conectaremos al servidor local de nuestro equipo.
En esta otra imagen mostramos como nos deberá de quedar la conexión en nuestro explorador de servidores.
Como último paso para dejar terminada nuestra capa de Acceso A Datos, agregamos Modelo De Entidad De Datos:
Cuando demos click en botón "Add", nos aparecerá el asistente para poder generar nuestro modelo, el cuál en la primera pantalla nos aparecerá las opciones si queremos generar nuestro modelo desde la base de datos, o si queremos crear un modelo vacío, para esta oportunidad, lo generaremos a partir desde la base de datos que creamos hace un momento:
En la siguiente pantalla de nuestro asistente, nos pedirá la conexión que se utilizará para poder acceder a la base de datos, que también ya la creamos, por lo tanto si desplegamos el combo, se nos desplegarán todas las conexiones existentes en el equipo (En el caso de tener varias) elegimos la conexión hacia nuestra base de datos, en caso de no estar chequeado la casilla de "Save entity connection string in App.config as:" la chequeamos y le dejamos el nombre que nos muestra por defecto, aunque sin ningún problema podemos cambiarlo, después damos click al botón siguiente:
En la siguiente y última pantalla de nuestro asistente, tenemos que seleccionar los objetos que queremos obtener desde nuestra base de datos, primero debemos de desplegar la pestaña que dice "Tables", para después poder chequear las dos tablas contenidas dentro de nuestra BD, seguidamente chequeamos la opción que dice "Pluralize or Singularize Generated Object Names" (Pluralizar o singularizar los nombres de los objetos generados), después si queremos le cambiamos el nombre al namespace del modelo, y después pulsamos el botón "Finish".
Ahora solo resta cambiar una propiedad en específico de nuestras entidades, llamada "Entity Set Name", la cual existe la posibilidad de que el nombre en plural no sea el correcto, por lo que lo corregiremos de la siguiente forma:
En el modelo de Datos, le damos clic derecho a nuestra entidad, y ubicamos la propiedad Entity Set Name, y le colocamos el nombre pluralizado de nuestra entidad tal y como se ve en la siguiente imagen:
Recuerden que este paso lo debemos de realizar por cada entidad que tengamos dentro de nuestro modelo de datos.
Hasta aquí hemos completado la primera parte de este tema, que se relaciona con la capa de acceso a datos de nuestra solución. En publicaciones posteriores estaremos completando el desarrollo del proyecto.












No hay comentarios :
Publicar un comentario