El motivo de este Blog es colaborar con un servicio REST para recibir dos variables en la URI. Se desarrolla en C# sobre Visual Studio 2015.
El caso parte de buscar un Cliente, este Cliente se puede buscar por nombre, dirección o teléfono, según lo que se seleccione en el front.
1. Base de Datos:
En SQL creamos la base de datos DB_CLIENTES y luego la tabla t_clientes
En SQL creamos la base de datos DB_CLIENTES y luego la tabla t_clientes
2. Crear Servicio:
2.1.- Abrir VS – Herramientas – Opciones – Editor de Texto – C## - General – Check en Números de Linea.
2.2.- Archivo – Nuevo – Proyecto – Visual C## - WCF – Aplicación de Servicios WCF (poner ubicación conocida y nombre de la solución personal, para nuestro caso WCFClientes)
2.3.- En Explorador de Soluciones eliminar IService1.cs y Service1.cs
2.4.- Clic derecho sobre WCFClientes – Agregar – Nuevo Elemento – Seleccionar Visual C## - Buscar WCF – Seleccionar Servicio WCF y poner nombre plural “Clientes”.
3. Crear Clase Clientes:
3.1.- Clic derecho sobre WCFClientes – Agregar – Nueva Carpeta y le ponemos de nombre "Dominio".
3.2.- Clic derecho sobre la carpeta creada "Dominio" - Agregar - Clase y le ponemos de nombre "Cliente.cs".
3.3.- Le damos doble clic a Cliente.cs y definimos sus atributos, tal y como se muestran a continuación:
4. Crear DAO y Conexión a la base de datos
4.1.- Clic derecho sobre WCFClientes – Agregar – Nueva Carpeta y le ponemos de nombre "Persistencia".3.2.- Clic derecho sobre la carpeta creada "Dominio" - Agregar - Clase y le ponemos de nombre "ConexionUtil.cs".
3.3.- Le damos doble clic a ConexionUtil.cs y definimos la cadena de conexión, tal. Como notarán a continuación podemos definir distintas conexiones e invocarlas posteriormente, para el caso de que tengamos que acceder a distintas bases de datos desde un mismo servicio:
3.4.- Luego creamos nuestro DAO, para esto creamos en la carpeta "Persistencia" la clase "ClienteDAO.cs" tal y como creamos "ConexionUtil", aquí tenemos dos métodos que nos van a servir para nuestro propósito:
3.4.1.- ObtenerCliente
3.4.2.- BuscarCliente, aquí recibe dos parámetros, el tipo: que es el campo por el cual se va a buscar (nombre, dirección o teléfono) y la variable var: que es el valor que se va a recibir de búsqueda y de acuerdo a eso se arma el query dependiendo de lo que llegue:
4. Luego trabajamos en el servicio, en el archivo Clientes.svc.cs de tal forma que quede así:
Aquí es donde definimos las dos variables en la URI
6. Marcado en Clientes.svc.cs
Clic derecho sobre archivo Clientes.svc.cs y seleccionamos Ver Marcado y debemos dejarlo así:
7. Compilar Servicio
Clic derecho sobre el servicio WCFClientes y lo compilamos
8. Visualizar Servicio en Navegador
Finalmente clic derecho sobre Clientes.svc.cs y seleccionamos Ver en Explorador.
8.1.- El servicio levantado
8.3.- El servicio Clientes buscando por nombre "n"
8.4.- El servicio Clientes buscando por dirección "d"
9. Referencias
https://msdn.microsoft.com/es-es/library/bb675245(v=vs.110).aspx
http://stackoverflow.com/questions/15289120/optional-uritemplate-parameter-using-webget
http://helibertoarias.com/net/como-publicar-servicio-web-wcf-con-json-en-c/
http://www.c-sharpcorner.com/blogs/optional-parameters-in-wcf-service-uri-template1
No hay comentarios:
Publicar un comentario