Como crear un servicio web con MVC, WCF por medio de capas conectando con una BD. (Paso a Paso)
Primero resuelve el problema. Entonces, escribe el cdigo. John Johnson Todo programa hace algo perfectamente bien, aunque no sea exactamente lo que nosotros queremos que haga. R.S. Pressmann
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Requisitos previos: Tener instalados SQL Server 2005 o 2008 SQLEXPRESS o MANAGEMENT (cualquiera) o ya sea MYSQL. ( para este caso vamos a utilizar SQL 2008). Visual Studio 2008 + Service Pack 1 Instalar MVC 2.0 Tener configurado en IIS 7 o superior Y por ultimo mucha paciencia jajaja
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Primero vamos a crear una BD (base de datos) en SQL SERVER 2008, en la cual vamos a utilizar para almacenar nuestra informacin (para este caso vamos a crearla a pie es decir manualmente). Elegir la ubicacin en el cual la base de datos va a ser creada. Copiar la direccin exacta de la carpeta en la cual se va a guardar la BD, en este caso es en: C:\BD tutorial
Creamos la BD con el nombre Tutorial y con las caractersticas que se pueden observar
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Una vez creada la BD ahora vamos a crear la tablas en la cual vamos a utilizar:
Ahora damos clic derecho en databases y refrescar (en la barra izquierda del Object Explorer). Podemos ver la BD Tutorial y la tabla Cliente con los campos Id y Nombre Ahora vamos a crear un procedimiento almacenado llamado Insertar_Cliente, en la BD de Tutorial le damos clic derecho actualizar.. por este lado es todo en la BD ahora procederemos a crear la aplicacin.
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
1. Primero ejecutamos Visual Studio 2008 como administrador (clic derecho ejecutar como administrador), esto para tener todos los privilegios y no tener problemas en el futuro.
Ahora vamos a File-> new -> Project
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Seguidamente vamos a seleccionar Asp.Net MVC 2 Web Aplicacin (asegrese de no crear un Asp.Net MVC 2 Empty Web Aplicacin esto porque se crea un proyecto vacio.) y le ponemos un nombre en este caso Tutorial
Seguidamente nos aparecer una ventana preguntando si queremos crear un unit test Project para este caso seleccionamos no y aceptar
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Una vez creado podremos observar algo como esto:
Ahora vamos a agregar los Class Library (.dll) con las cuales vamos a trabajar como capas, clic derecho en el solucin explorer add->new proyect
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
ESTRUCTURAS DE LAS CAPAS. ES IMPORTANTE TENER CLARO ANTES DE INICIAR EL PROYECTO ! Por ejemplo el DS no ve la capa WCF solo a la capa BS que esta ve a la capa WCF Aparecera una ventana y seleccionamos visual C# -> Windows ->Class Library y la guardamos con el nombre de Tutorial.Datos y OK Hacemos este proceso varias veces hasta agregar un Tutorial.DS y un Tutorial.BS (esas son las capas en la cual vamos a trabajar) Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
2. Ahora vamos agregar la capa del WCF en este caso es Visual C#->WCF->WCF Service Library y lo guardamos con el nombre de WCF
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Despus de creadas las capas en las cuales vamos a utilizar se ver algo como esto: Tenemos la capa Tutorial (la interfaz MVC) Las capas Tutorial.BS , Tutorial.Datos, Tutorial.DS y el WCF
Ahora vamos a empezar a trabajar con la capa del Tutorial.Datos que es la cual vamos a crear los objetos que vamos a utilizar en este caso Cliente. Pero primero en Tutorial.Datos vamos a eliminar la class.cs, clic derecho->delete
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Despus de eliminado ahora sobre Tutorial.Datos vamos agregar una nueva clase dando clic derecho sobre Tutorial.Datos->add->Class.
Ahora seleccionamos Class y el nombre Cliente.
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Aqu definimos los atributos del objeto cliente que como vimos a la hora de crear la BD tiene como atributo ID y Nombre
Using .
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Copilamos.
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Referencia al .datos al ds y agregar using Tutorial.Datos; Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Public interface Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
#region IAccesoDato Members
public int Insertar_Cliente(Cliente cli) {
int ff; SqlConnectionStringBuilder _connectionStringBuilder = new SqlConnectionStringBuilder(); _connectionStringBuilder.DataSource = @".\SQLEXPRESS"; _connectionStringBuilder.InitialCatalog = "Tutorial"; //NOMBRE DE LA BASE DE DATOS _connectionStringBuilder.IntegratedSecurity = true;
using (SqlConnection _connection = new SqlConnection(_connectionStringBuilder.ConnectionString)) { _connection.Open();
SqlTransaction _transaction = _connection.BeginTransaction(); SqlCommand _command = new SqlCommand(); _command.Connection = _connection; _command.CommandType = CommandType.StoredProcedure; _command.CommandText = "Insertar_Cliente"; // Aqui va el nombre del procedimiento de almacenado
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
using Tutorial.Datos; using Tutorial.DS; Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Ahora WCF
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
using Tutorial.BS; using Tutorial.Datos; Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Copiamos la direccin http://localhost/Tutorial/WCF1.Service1.svc
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Pegamos la direccin http://localhost/Tutorial/WCF1.Service1.svc y presionamos go !!
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
using Tutorial.Datos;
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Ahora vamos a crear un articulo 1ero agregar la vista
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright
Creado por Jose Abraham Benavides Vargas Estudiante de Ing. En Sistemas de la Informacin UNA- SRCH Nicoya Copyright