【问题标题】:C# WCF without service reference没有服务引用的 C# WCF
【发布时间】:2018-12-29 05:52:39
【问题描述】:

我不知道如何在不使用 C# 中的服务引用将 WCF 添加到项目的情况下使用它。我不能使用服务参考,因为我的项目没有这个选项。有人可以告诉我我应该做什么吗? 我将使用的 WSDL 有方法:Login、Logout、GetData、GetDetails、GetCaptcha、CheckCaptcha。

我尝试了这个解决方案,但我在使用 ServiceContract 时遇到了问题。我不能用这种类型...

 BasicHttpBinding binding = new BasicHttpBinding();
 EndpointAddress address = new EndpointAddress("www");
 ChannelFactory<ServiceContract> factory = new ChannelFactory<ServiceContract>(binding, address);
 ServiceContract channel = factory.CreateChannel();

有什么想法吗?

【问题讨论】:

    标签: c# web-services wcf wsdl


    【解决方案1】:

    添加服务引用的替代方法是使用 SvcUtil.exe 生成代理客户端

    Visual Studio command prompt 中可以生成如下代理:

    svcutil http://localhost/service.svc /t:code /out:ServiceProxy.cs /config:ServiceProxy.config
    

    然后您可以将生成的代理类和配置添加到您的项目中并开始使用客户端。

    【讨论】:

    • 好吧。我有另一个问题。当我有一个 .Net Core 项目并且我想将消息编码更改为 MTOM 时,我应该怎么做?
    • 您可以将dotnet-svcutil 用于 .NET 核心和 .NET 标准项目。生成后,您可以更新配置以使用MTOM message encoding。编辑:看起来 MTOM 消息编码是not supported in WCF for .NET core
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多