110,499
社区成员
发帖
与我相关
我的任务
分享
using System;
using System.ServiceModel;
using System.Web.Services.Protocols;
class Program
{
static Uri uri = new Uri("http://localhost:8123/my/service");
static void Main(string[] args)
{
// 启动WCF服务
var serviceHost = new ServiceHost(typeof(MyService));
serviceHost.AddServiceEndpoint(typeof(IService), new BasicHttpBinding(BasicHttpSecurityMode.None), uri);
serviceHost.Open();
// 使用客户
var client = new MySoapClient(uri.ToString());
int sum = client.Add(3, 5);
Console.WriteLine("sum={0}", sum);
Console.ReadLine();
}
[ServiceContract(Namespace = "http://tempuri.org/")]
public interface IService
{
[OperationContract]
int Add(int a, int b);
}
public class MyService : IService
{
public int Add(int a, int b)
{
return a + b;
}
}
[System.Web.Services.WebServiceBinding(Namespace = "http://tempuri.org/")]
class MySoapClient : SoapHttpClientProtocol
{
public MySoapClient(string uri)
{
this.Url = uri;
}
[SoapDocumentMethod("http://tempuri.org/IService/Add")]
public int Add(int a, int b)
{
object[] results = this.Invoke("Add", new object[] {a,b});
return ((int)(results[0]));
}
}
}