2009-09-19 88 views
1

我写了一个工作正常的wcf服务。 在客户端我使用VS2008的AddServiceReference功能来生成客户端代理,它也工作正常。 现在,为了学习的目的,我想用svcutil.exe工具生成我的客户端代理,但我无法使用它,我已尝试但不知道什么是缺少的,也许我缺少一些参数,我知道AddServiceReference功能也使用svcutil.exe在客户端生成代理。如何使用svcutil.exe创建客户端代理ib WCF?

任何人都请告诉我如何使用。

其实我的wcf服务项目位于C:\ Projects \ WCFService,我的客户端位于 C:\ Projects \ WCFClient。

下面是我的服务类...

Uri address = new Uri("http://localhost:8090/MathServices/"); 

      using (ServiceHost host = new ServiceHost(typeof(MathOperations), address)) 
      { 
       BasicHttpBinding binding = new BasicHttpBinding(); 
       host.AddServiceEndpoint(typeof(IMathOperations), binding, "");    

       ServiceMetadataBehavior metaDataBehavior = new ServiceMetadataBehavior(); 
       metaDataBehavior.HttpGetEnabled = true; 
       host.Description.Behaviors.Add(metaDataBehavior); 
          host.Open(); 

      } 

回答

1

我们发现,最好使用WCF而不使用自动生成的代理。

看一看这个视频:

http://www.dnrtv.com/default.aspx?showNum=103

注:这只能如果你有服务器和客户端都进行控制。

+1

+1我也建议看这个视频:http://www.dnrtv.com/default.aspx?showNum=122 – 2009-09-22 01:05:23

0

使用svcutil YourServiceUrl生成代理类。

如果您的datacontract包含列表,请使用/ct:System.Collections.Generic.List 1`,否则代理类将具有数组而不是列表。