// 定义服务契约
using System;
using System.ServiceModel;
[ServiceContract]
public interface ICalculatorService
{
[OperationContract]
double Add(double a, double b);
}
// 实现服务契约
public class CalculatorService : ICalculatorService
{
public double Add(double a, double b)
{
return a + b;
}
}
// 配置并启动WCF服务
using (ServiceHost host = new ServiceHost(typeof(CalculatorService)))
{
host.Open();
Console.WriteLine("Service is running...");
Console.ReadLine();
host.Close();
}
// 客户端调用WCF服务
using (ChannelFactory<ICalculatorService> factory = new ChannelFactory<ICalculatorService>("CalculatorServiceEndpoint"))
{
ICalculatorService proxy = factory.CreateChannel();
double result = proxy.Add(2, 3);
Console.WriteLine("Result: " + result);
}
ServiceContract 和 OperationContract 属性来定义服务接口 ICalculatorService,该接口包含一个方法 Add,用于实现加法操作。CalculatorService 来实现 ICalculatorService 接口,并提供具体的业务逻辑。ServiceHost 类来托管和启动 WCF 服务。host.Open() 方法启动服务,host.Close() 方法关闭服务。ChannelFactory<T> 创建一个代理对象来调用 WCF 服务的方法。通过 factory.CreateChannel() 创建通道,然后调用 Add 方法并获取结果。以上代码展示了如何创建、托管和调用一个简单的 WCF 服务。
上一篇:c# as
下一篇:c# app.config
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站