Como crear un servicio web con MVC, WCF por

Anuncio
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 código.”
— 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 Información
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 Información
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 información (para este caso vamos a crearla a pie es decir
manualmente).
 Elegir la ubicación en el cual la base de datos va a ser creada.
 Copiar la dirección 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 características que se pueden observar
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 aplicación.
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 Información
UNA- SRCH Nicoya
Copyright ©

Seguidamente vamos a seleccionar Asp.Net MVC 2 Web Aplicación (asegúrese de no crear
un Asp.Net MVC 2 Empty Web Aplicación 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 Información
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 solución explorer add->new proyect
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 Información
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 Información
UNA- SRCH Nicoya
Copyright ©

Después 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 Información
UNA- SRCH Nicoya
Copyright ©

Después 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 Información
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 Información
UNA- SRCH Nicoya
Copyright ©
Copilamos….
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 Información
UNA- SRCH Nicoya
Copyright ©
Public interface
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 Información
UNA- SRCH Nicoya
Copyright ©
_command.Parameters.AddWithValue("@Id", cli.Id );
_command.Parameters.AddWithValue("@Nombre",cli.Nombre );
_command.Transaction = _transaction;
try
{
_command.ExecuteNonQuery();
_transaction.Commit();
}
catch (Exception ex)
{
_transaction.Rollback();
}
return ff = 1;
_connection.Close();
}
}
#endregion
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
using Tutorial.Datos;
using Tutorial.DS;
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Ahora WCF
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
using Tutorial.BS;
using Tutorial.Datos;
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Copiamos la dirección http://localhost/Tutorial/WCF1.Service1.svc
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Pegamos la dirección http://localhost/Tutorial/WCF1.Service1.svc y presionamos go ¡!!
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
using Tutorial.Datos;
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
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 Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Como trabajan las capas!!!
Creado por Jose Abraham Benavides Vargas
Estudiante de Ing. En Sistemas de la Información
UNA- SRCH Nicoya
Copyright ©
Descargar