如何使用svcutil.exe创建客户端代理ib WCF?

时间:2009-09-19 16:51:30

标签: wcf

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

任何人都可以告诉我如何使用。

实际上我的wcf服务项目位于C:\ Projects \ WCFService,我的客户端位于 C:\项目\ 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();

            }

2 个答案:

答案 0 :(得分:1)

我们发现在没有自动生成代理的情况下使用WCF会更好。

看一下这个视频:

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

注意:这仅在您控制服务器和客户端时才有效。

答案 1 :(得分:0)

使用svcutil YourServiceUrl生成代理类。

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