1
Seleccione "Nuevo " y luego " proyecto" en el menú Archivo. Aparecerá el cuadro de diálogo Nuevo proyecto.
2
Seleccione Visual C # y de Windows en la lista de plantillas del proyecto en el cuadro de diálogo Nuevo proyecto.
3
Seleccione una aplicación de consola de la lista de tipos de proyectos de Windows. Especifique un nombre para el proyecto en el cuadro Nombre . El nombre del proyecto debe ser algo relacionado con un servicio propio de alojamiento web si es posible.
4
Escribir un lugar en el cuadro de ubicación en el cuadro de diálogo Nuevo proyecto. Alternativamente , haga clic en "Examinar" para desplazarse a la ubicación donde se guardará el proyecto. Haga clic en " Aceptar". Visual Studio creará una nueva aplicación de consola.
5
Haga clic SelfHost del Explorador de soluciones . A continuación, seleccione Agregar referencia. Localice System.ServiceModel en la ficha . NET y haga clic en " Aceptar". Esto agregará una referencia al ensamblado System.ServiceModel que se requiere para desarrollar o alojar servicios WCF.
6
doble clic en el archivo de clase que se agregó cuando se creó el proyecto. En la mayoría de los casos, se llamará Program.cs . Se visualizará el código de la clase .
7
Haga clic en el nombre del proyecto y seleccione " Añadir nueva clase ". Nombre de la clase " HelloWorld " e introducir el siguiente código:
using System.ServiceModel ;
utilizando System.ServiceModel.Description ;
[ ServiceContract ]
< p > public interface IHelloWorld
{
[ OperationContract ]
cadena
SayHello (string nombre ) ; }
public class HelloWorld : IHelloWorld
{ public string SayHello (string nombre )
{
string.Format regreso
("Hello , { 0 }", nombre);
}
}
Este código es la implementación de una muestra de servicios web " HelloWorld " que tiene una operación, " SayHello . "
8 < p> Haga doble clic en la clase que se agrega automáticamente al crear el proyecto. En la mayoría de los casos, la clase se denomina Program.cs
9
Escriba el siguiente código en la parte superior de la clase :
using System.ServiceModel ;
< p . > utilizando System.ServiceModel.Description ;
10
Introduzca el código siguiente en el método Main de la clase :
//define la dirección base para el servicio en el equipo local
Uri baseAddress = new Uri ( " http://localhost:8080/hello ");
//Crear el host de servicio
usando ( ServiceHost host = nuevo ServiceHost . (typeof ( HelloWorld ) , baseAddress ))
{
//Habilitar la publicación de metadatos
ServiceMetadataBehavior smb = new ServiceMetadataBehavior ( ) .
smb . httpGetEnabled = true;
smb.MetadataExporter.PolicyVersion = PolicyVersion.Policy15 ;
host.Description.Behaviors.Add (SMB ) ;
//Abrir el ServiceHost para iniciar escuchar los mensajes
host.Open ( ) .
Console.WriteLine ( " El servicio se está ejecutando y se puede recibir peticiones a { 0 }", baseAddress ) ;
consola . WriteLine ( "Press Console.ReadLine (); //Cierre el ServiceHost host.Close . (); } Este código inicia el host de servicio y crea una instancia del servicio. El servicio se puede llamar desde un cliente hasta que se cierre la aplicación de consola .