Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El ejemplo InlineCode muestra cómo implementar un servicio hospedado por Internet Information Services (IIS), donde el código de servicio se encuentra en línea en un archivo .svc y se compila a petición. El código de servicio también se puede implementar directamente en archivos de código fuente ubicados en el directorio \App_Code de la aplicación o compilarse en el ensamblado implementado en \bin. En este ejemplo no se muestran estas técnicas.
Nota:
El procedimiento de configuración y las instrucciones de compilación de este ejemplo se encuentran al final de este tema.
En el ejemplo se muestra un servicio típico que implementa un contrato que define un patrón de comunicación de solicitud-respuesta. El servicio se hospeda en IIS y el código de servicio está completamente contenido en el archivo Service.svc. El servicio está activado por el host y compilado a petición por el primer mensaje enviado al servicio. No es necesario compilar previamente. El servicio implementa un ICalculator
contrato tal como se define en el código siguiente:
// Define a service contract.
[ServiceContract(Namespace="http://Microsoft.ServiceModel.Samples")]
public interface ICalculator
{
[OperationContract]
double Add(double n1, double n2);
[OperationContract]
double Subtract(double n1, double n2);
[OperationContract]
double Multiply(double n1, double n2);
[OperationContract]
double Divide(double n1, double n2);
}
La implementación del servicio calcula y devuelve el resultado adecuado.
<%@ServiceHost language=c# Debug="true" Service="Microsoft.ServiceModel.Samples.CalculatorService" %>
// Service class that implements the service contract.
public class CalculatorService : ICalculator
{
public double Add(double n1, double n2)
{
return n1 + n2;
}
public double Subtract(double n1, double n2)
{
return n1 - n2;
}
public double Multiply(double n1, double n2)
{
return n1 * n2;
}
public double Divide(double n1, double n2)
{
return n1 / n2;
}
}
Al ejecutar el ejemplo, las solicitudes de operación y las respuestas se muestran en la ventana de la consola del cliente. Presione ENTRAR en la ventana del cliente para apagar el cliente.
Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714
Press <ENTER> to terminate client.
Para configurar, compilar y ejecutar el ejemplo
Asegúrese de que ha realizado el procedimiento de instalación única para los ejemplos de Windows Communication Foundation.
Para compilar el código C# o Visual Basic .NET Edition de la solución, siga las instrucciones de Building the Windows Communication Foundation Samples.
Una vez compilada la solución, ejecute setup.bat para configurar la aplicación ServiceModelSamples en IIS 7.0. El directorio ServiceModelSamples debería aparecer ahora como una aplicación de IIS 7.0.
Para ejecutar el ejemplo en una configuración con un solo equipo o con varios, siga las instrucciones que se indican en Ejecución de los ejemplos de Windows Communication Foundation. Para obtener un ejemplo sobre cómo crear una aplicación cliente que pueda llamar a este servicio, consulte How to: Create a Client.