28
Jorge Moreno Leidy Oicata Aleja Burgos 21/11/2012 Universidad de Pamplona Como crear un servicio web en .Net

Creacion de un Servicio Web con .NeT.pdf

Embed Size (px)

Citation preview

Page 1: Creacion de un Servicio Web con .NeT.pdf

J o r g e M o r e n o

L e i d y O i c a t a

A l e j a B u r g o s

2 1 / 1 1 / 2 0 1 2

Universidad de Pamplona

Como crear un servicio web en .Net

Page 2: Creacion de un Servicio Web con .NeT.pdf

Contenido Herramientas ....................................................................................................................................... 4

InstalaciónMicrosoft Visual Web Developer 2012: ............................................................................. 5

1. Programas a Instalar:............................................................................................................... 5

2. SQL Server Express: ................................................................................................................. 5

3. Software de Terceros: ............................................................................................................. 5

2. Instalación: .................................................................................................................................. 6

3. Finalizacion: ................................................................................................................................. 6

Actualizaciones: ................................................................................................................................... 7

1. Requisitos: ............................................................................................................................... 7

2. Instalación: .................................................................................................................................. 8

3. Finalizar: ...................................................................................................................................... 8

Entorno Desarrollo .............................................................................................................................. 9

Apertura .......................................................................................................................................... 9

Obtención de una Key: .................................................................................................................... 9

Instalación de Microsoft Visual Web Developer 2010 ...................................................................... 10

Service Pack 1 ................................................................................................................................ 10

Instalador Web: ......................................................................................................................... 10

Crear un servicio Web WCF en C # .................................................................................................... 12

Método 1 (Ramteke, C# Tutorials): ............................................................................................... 12

Método 2: (Ramteke) .................................................................................................................... 16

Publicar el servicio web en el servidor IIS ......................................................................................... 18

Instalar Net 3.5 Service Pack 1 ......................................................................................................... 22

Paso 1: ........................................................................................................................................... 22

Paso 2: ........................................................................................................................................... 22

Paso 3: ........................................................................................................................................... 22

Errores ............................................................................................................................................... 23

Instalación: .................................................................................................................................... 23

Error al instalar SQL Server Express 2012 ................................................................................. 23

Net 3.5 ........................................................................................................................................... 24

Windows 7 / Vista no muestra nada en “Activar o Desactivar Características de Windows” .. 24

Ejecutar consola en modo administrador (Cr_Hdz, 2011) ........................................................ 25

Page 3: Creacion de un Servicio Web con .NeT.pdf

IIS ................................................................................................................................................... 27

Ejecutar el servidor IIS Express (IIS): ......................................................................................... 27

Abrir Administrador de IIS (Quijano): ........................................................................................ 27

Bibliografía ........................................................................................................................................ 28

Page 4: Creacion de un Servicio Web con .NeT.pdf

Herramientas

Para poder crear un servicio web, necesitamos descargar la herramienta Visual Web Developer

2010 Express de Microsoft, para eso nos dirigimos al siguiente link:

http://go.microsoft.com/?linkid=9730788

Para poder crear el servicio web necesitamos las siguientes herramientas:

Microsoft .net 3.5

Daemo Tools o alguna herramienta para montar unidades de CD virtuales

Microsoft visual studio web Developer 2010 o 2012 express

Service pack Visual Studio 2010

IIS (Se instala al momento de instalar el visual studio correspondiente)

Page 5: Creacion de un Servicio Web con .NeT.pdf

InstalaciónMicrosoft Visual Web Developer 2012:

1. Programas a Instalar:

El programa de instalación te hará una lista con todos los elementos a instalar, das clic en aceptar

2. SQL Server Express:

Al estar descargando e instalando nos pedirá una contraseña para nuestra base de datos,

escribimos la deseada y continuamos.

Ilustración 1, información para la instalación de SQL Server Express

3. Software de Terceros:

Microsoft nos avisa de que se utilizara software de terceros en la instalación, así que debemos

aceptar sus términos y condiciones.

Ilustración 2, software de terceros a instalar

Page 6: Creacion de un Servicio Web con .NeT.pdf

2. Instalación: Tras el paso de requisitos la aplicación empieza a descargar e instalar las aplicaciones necesarias

Ilustración 3, proceso de descarga con el instalador de plataforma web

Si tuviste algún error en la instalación, puede irte a la sección de Instalación:

Durante el proceso de instalación, el te pedirá reiniciar la máquina para continuar, le das en

aceptar (o Ahora) y el equipo se reiniciara, para luego pedirle permiso de ejecución e

inmediatamente volverse a ejecutar la instalación

3. Finalizacion: Si todo ha ido bien nos saldrá la siguiente ventana confirmándonos que todo nos ha ido de

maravilla

Page 7: Creacion de un Servicio Web con .NeT.pdf

Ilustración 4, finalizacion de la instalación con el instalador de plataforma web 4.0

Actualizaciones: Tras mostrarnos el mensaje de instalación correcta se abrirá de nuevo el instalador para descargar

unas actualizaciones de la herramienta:

1. Requisitos:

Ilustración 5, requisitos al momento de actualizar el servicio

Damos clic en “Acepto”

Page 8: Creacion de un Servicio Web con .NeT.pdf

2. Instalación: Debemos esperar que finalice el proceso.

Ilustración 6, proceso de descarga en la etapa de actualización

3. Finalizar:

Ilustración 7, finalización de la etapa de actualización

Page 9: Creacion de un Servicio Web con .NeT.pdf

Entorno Desarrollo

Apertura Para ejecutar la aplicación anteriormente descargada, nos vamos a Menú y luego a todos los

programas y buscamos la carpeta Microsoft Visual Studio 2012 express para luego dar clic en “VS

Express for web” (Ilustración 9, búsqueda del ejecutable de la aplicación) y se nos abrirá la

siguiente ventana (Ilustración 8, ventana de inicio de VS)

Ilustración 9, búsqueda del ejecutable de la aplicación

Obtención de una Key: Para obtener una llave damos clic en “Register Online” en

la ventana de inicio de VS (Ilustración 8, ventana de inicio

de VS) y nos llevara a una página web donde debemos

llenar con la información solicitada, Tras llenar todos los

campos requeridos dan clic en Next y obtendrán una

llave, la cual colocara en la ventana de inicio de VS como

se ve en Ilustración 10, habilitar el botón next en la

ventana de inicio de VS, si la clave es correcta se

habilitara el botón next, al cual le darán clic. El programa

hara un proceso de validación y luego se ejecutara

Ilustración 8, ventana de inicio de VS

Ilustración 10, habilitar el botón next en la ventana de inicio de VS

Page 10: Creacion de un Servicio Web con .NeT.pdf

Instalación de Microsoft Visual Web Developer 2010

Tras agregar la imagen .iso a una unidad de CD, nos desplegara un menú donde escogeremos la

instalación de Microsoft Web Developer 2010 Express e instalamos como un programa normal de

Windows

Ilustración 12, menú de instalación de ISO

Service Pack 1 Tras la correcta instalación debemos actualizar con el service pack 1, el cual podremos descargar

de aquí www.microsoft.com/en-us/download/confirmation.aspx?id=23691 que nos descargara la

información, o podemos descargar la imagen iso.

Instalador Web:

Tras descargar lo ejecutamos y nos aparecerá la siguiente ventana, donde seleccionamos la opción

de Reapply y damos clic en siguiente.

Tomara unos minutos hasta que aparece

Ilustración 13, ejecución del service pack 1

Ilustración 11, progreso de instalación de web Developer 2010

Page 11: Creacion de un Servicio Web con .NeT.pdf

Ilustración 14, instalación del service pack

Page 12: Creacion de un Servicio Web con .NeT.pdf

Crear un servicio Web WCF en C #

Para crear un nuevo proyecto de aplicación de servicio web WCF, vaya a File ->New -> Project. A

continuación seleccione las plantillas instaladas de Visual C# WCF y entonces seleccione WCF

ServiceApplication.

Aquí voy a dar el nombre al proyecto como “MyFirstWcfWebService“. Clic en el botón OK.

Método 1 (Ramteke, C# Tutorials):

1) Si nos fijamos en el Explorador de soluciones, obtendrá los siguientes dos archivos de

código agregado en el proyecto de servicio web.

i. Service1.svc

ii. IService1.cs. esta es una interfaz. Nosotros llamamos a esta interfaz como

ServiceContract.

Usted obtiene el siguiente código auto generado en el archivo Service1.svc.cs

Page 13: Creacion de un Servicio Web con .NeT.pdf

Aquí, GetData y GetDataUsingDataContract son los métodos web. No hay daño en la eliminación

de estos dos métodos. Estoy manteniendo estos dos métodos como es y la adición de otro método

que acepta string y devuelve un mensaje de welcome.

2) Agregar el siguiente código debajo del método GetDataUsingDataContract

public String WelComeMessage(String name) { return String.Format("{0},Welcome to http://a1ashiish-csharp.blogspot.com", name); }

3) Ahora abra, IService1.cs desde el solutionexplorer. Usted obtiene el siguiente código aut

generado.

Page 14: Creacion de un Servicio Web con .NeT.pdf

Iservice1.cs – código auto generado

Aquí nosotros llamamos la interfaz como ServiceContract y los correspondientes métodos

son llamados como OperationContract.

4) Ahora, necesitamos adicionar OperationContract a nuestro nuevo método Web

creadoWelComeMessage. Adicionamos el siguiente código debajo de

GetDataUsingDataContract–

[OperationContract] String WelComeMessage(String name);

Ahora, el codigo final se parece a:

Page 15: Creacion de un Servicio Web con .NeT.pdf

Código final después de escribir OperationContract para el método web

WelComeMessage

5) Su servicio web ya está. Ahora ejecute el servicio web oprimiendo el botón F5. Se abrirá la

siguiente página.

Directory Listing of WCF web service

6) Clic en Service1.svc. se abrirá la siguiente pagina

Page 16: Creacion de un Servicio Web con .NeT.pdf

Para probar este servicio, usted tendrá que crear un cliente y lo utilizan para llamar al

servicio. Haga clic aquí para saber cómo consumir el servicio web WCF mediante

aplicación cliente. Hay otra manera de probar el servicio web. Haga clic aquí para saber

cómo probar prueba WCF servicio web utilizando WcfTestClient.

Método 2: (Ramteke) 1. Luego de crear el proyecto nos vamos al explorador de soluciones y damos clic derecho, luego

seleccionamos agregar y luego nuevo elemento:

Page 17: Creacion de un Servicio Web con .NeT.pdf

2. Luego escogemos Visual c#->Web en la sección Plantillas Instaladas y en la sección del medio

escogemos aquel que dice Servicio Web.

3. Tras seleccionar se creara una función por default que es HelloWorld, este es un servicio que

se puede consumir, nosotros agregaremos 2 funciones, una que muestra un mensaje y otra

que nos permite sumar dos números:

[WebMethod] public String MyFirstWebMethod(String firstName, String lastName) { //return "How are you " + firstName + " " + lastName + "?"; return String.Format("How are you {0} {1}?", firstName, lastName); } [WebMethod] public String sumar(String a, String b) { int sum = Convert.ToInt32(a) + Convert.ToInt32(b); String re = Convert.ToString(sum); return String.Format("Suma de {0}+{1}={2}", a, b, re); }

Y ya tendremos dos funcione que podremos consumir

Page 18: Creacion de un Servicio Web con .NeT.pdf

Publicar el servicio web en el servidor IIS

Abra el proyecto de aplicación. Vaya al Explorador de soluciones y haga clic derecho en el proyecto

de servicio Web. Selecciona "Publicar" en el menú desplegable.

A "Publicar Web" aparecerá la ventana.

Cambie el nombre del perfil de publicación de "profile1" a "MyFirstWebServiceProfile".

Seleccione "Sistema de archivos" como método de publicación. Y darla ubicación de

Page 19: Creacion de un Servicio Web con .NeT.pdf

destino para publicar el servicio Web. Cumplo ubicación de destino en "C: \

inetpub\wwwroot\MyFirstPublishedWebService".

Haga clic en el botón Publicar. La aplicación de servicio Web se publica ahora.

Usted encontrará los siguientes archivos y carpetas en la carpeta de publicación. I)Carpeta bin -esta carpeta contiene el archivo dll. II) Archivo Web.Config. III)Service1.asmx archivo.

Ahora abra IIS (Internet Information Services).

Aquí, usted puede ver la carpeta publicado en "Sitio Web predeterminado”. Tendremos que convertir ala aplicación.

Haga clic derecho sobre la carpeta publicada y seleccione "Convertir a aplicación".

Page 20: Creacion de un Servicio Web con .NeT.pdf

Puede proporcionar Alias diferentes grupos de aplicaciones. El grupo de aplicaciones debe tener acceso de lectura a la ruta física. Dar clic en el botón Ok publicaremos su servicio web en IIS.

A continuación, tendrá que activar la navegación por directorios de nuestra aplicación recién Servicio Web creado. Mientras selecciona "MyFirstPublishedWebService" clic doble aplicación en "Examen de directorios".

Haga clic en Activar para habilitar la exploración de directorios.

Ahora reinicie el IIS surtan efecto los cambios.

Page 21: Creacion de un Servicio Web con .NeT.pdf

Ahora navegar "http://localhost/MyFirstPublishedWebService/Service1.asmx" en el navegador de internet. Y aquí está la primera interfaz deservicio web publicado.

Page 22: Creacion de un Servicio Web con .NeT.pdf

Instalar Net 3.5 Service Pack 1 Para instalar descargaremos el Microsoft net 3.5 service pack 1.

Paso 1: Nos vamos a Inicio ->Panel de Control->Programas

Paso 2: Luego nos dirigimos a la sección Programas y Características->Activar o Desactivar Características

de Windows

Paso 3: Seleccionamos Microsoft .Net Framework 3.5.1 y clic en ok

Net framework 3.5 SP1, estará listo para ser

instalado.

Page 23: Creacion de un Servicio Web con .NeT.pdf

Errores

Instalación:

Error al instalar SQL Server Express 2012

Tras pasar la fase de instalación sabe una advertencia sobre que no se pudo instalar el SQL Server

Exprese, debido a que idioma del sistema operativo no concuerda, para resolver esto debes:

Inicio, luego a panel de control y verificar que este seleccionada la opción “Iconos grandes” en

“Ver por”, luego debes escoger Configuración regional y de idioma y escoge en “Formato” el que

venía por default al momento de instalar el Sistema Operativo.

Cierre, y vuelva abrir el instalador.

Si al intenta de instalar de nuevo le sale el mismo mensaje, cierre todo y vuelva a abrir el

instalador y da clic en opciones y luego en “Selecciones el idioma preferido para la instalación de

software”, escoja el que es por default en su Sistema Operativo (puede ser ingles) y continúe

normalmente

Page 24: Creacion de un Servicio Web con .NeT.pdf

Net 3.5

Windows 7 / Vista no muestra nada en “Activar o Desactivar Características de

Windows”

(Quílez, 2010)

Intentar reparar archivos corruptos:

Primero debemos iniciar la consola en modo administrador

Ejecutamos el comando sfc /scannow

Esperamos a que el escaneo termine.

Tras finalizar el escaneo verificamos de nuevo la herramienta, si sigue igual vamos al

método B

Entradas corruptas en el almacén de componentes:

Descargamos System Update Readiness de

http://support.microsoft.com/kb/947821/esescogiendo el método 2 y el modelo de

nuestro sistema operativo

Tras la descarga ejecutamos el archivo, el cual demorara un buen tiempo.

Una vez terminado el escaneo, nos vamos a la carpeta C:\Windows\Logs\CBS y editamos

el archivo CheckSUR.log.

Nos fijamos en las entradas corruptas, es decir aquellas debajo de la línea Unavailable

repair files, si no tenemos ninguna quiere decir que el programa a echo todo bien, en caso

contrario debemos editar el registro con permisos elevados y posicionarnos en la siguiente

rama:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Compone

nt Based Servicing\Packages

Localizamos en ella una rama cuyo nombre coincida al cien por cien con la que habíamos

detectado como corrupta, sin la extensión. Borramos esa rama del registro.

Reiniciamos el equipo y comprobamos si ya funciona “Activar o Desactivar Características

de Windows”. En mi caso ahora funciona perfectamente. Tras ello, un Windows Update en

el que me vuelve a aparecer la actualización KB978262 (o la descargamos manualmente) y

actualizamos. Tras otro reinicio, ahora sigue funcionando correctamente

Page 25: Creacion de un Servicio Web con .NeT.pdf

Ejecutar consola en modo administrador (Cr_Hdz, 2011)

Para optener los permisos de Administración vamos al bloc de notas y dentro escribimos "cmd" y

lo guardamos como consola.bat:

3) Ahora vamos al lugar donde lo hayamos guardado, le damos boton derecho y clicamos en

"Ejecutar como administrador":

Y si sigues los pasos correctamente estarás logueado en la consola como Administrador:

Page 26: Creacion de un Servicio Web con .NeT.pdf
Page 27: Creacion de un Servicio Web con .NeT.pdf

IIS

Ejecutar el servidor IIS Express (IIS):

1. Abrimos una consola de comandos

2. Nos vamos a la carpeta de instalación de ISS Express

3. Ejecutamos el comando iisexpress:

Abrir Administrador de IIS (Quijano):

1. Su instalación es tan sencilla como el irse al Panel de Control -> Programas -> Activar o

desactivar características de Windows y seleccionar qué capacidades quieres habilitar del

servidor Web.

Page 28: Creacion de un Servicio Web con .NeT.pdf

Bibliografía Cr_Hdz. (2011). Taringa. Recuperado el 5 de 11 de 2012, de http://www.taringa.net/posts/ciencia-

educacion/12626021/Loguearse-como-Administrador-en-consola-de-Windows-7.html

IIS. (s.f.). Obtenido de http://www.iis.net/learn/extensions/using-iis-express/running-iis-express-

from-the-command-line

Quijano, J. (s.f.). Configurando un IIS para .NET. Obtenido de

http://www.genbetadev.com/desarrollo-web/configurando-un-iis-para-net

Quílez, J. A. (20 de 5 de 2010). Un Blog de Windows. Recuperado el 5 de 11 de 2012, de

http://msmvps.com/blogs/quilez/archive/2010/05/20/windows-7-vista-no-muestra-nada-en-

activar-o-desactivar-caracter-237-sticas-de-windows.aspx

Ramteke, A. (s.f.). C# Tutorials. Obtenido de http://a1ashiish-csharp.blogspot.com/2012/01/cnet-

how-to-create-web-service-in-cnet.html

Ramteke, A. (s.f.). C# Tutorials. Obtenido de http://a1ashiish-csharp.blogspot.com/2012/01/cnet-

how-to-create-wcf-web-service-in.html#.UKzz8vUn1di