如何以编程方式创建BasicHttpBinding?

布里巴

我必须执行以下代码:

BasicHttpBinding binding = new BasicHttpBinding ();

Uri baseAddress = new Uri ("URL.svc");

EndpointAddress endpointAddress = new EndpointAddress (baseAddress);

var myChannelFactory = new ChannelFactory<IMyInterface> (binding, endpointAddress);

IMyInterface client = null;

try
{
    client = myChannelFactory.CreateChannel ();
    var a = client.WsFunction ("XXXXXX");                    
    ((ICommunicationObject)client).Close ();
}
catch
{
    if (client != null)
    {
        ((ICommunicationObject)client).Abort ();
    }
}

其中“ IMyInterface”是我的WS实现的接口..例如:

[ServiceContract]
public interface IMyInterface
{
    [OperationContract]
    Result WsFunction1 (string param);

    [OperationContract]
    Result WsFunction2 (string param);

    [OperationContract]
    Result WsFunction3 (string param);
}

它返回如下内容:

[DataContract]
public class Result
{
    string a = "";
    string b = "";

    [DataMember]
    public string A
    {
        get { return a; }
        set { a = value; }
    }

    [DataMember]
    public string B
    {
        get { return b; }
        set { b = value; }
    }
}

当我运行此代码时,可以到达WS,但是无法填写结果。

我究竟做错了什么?

提前致谢!

米莉·史密斯

通过a访问服务的最简单方法BasicHttpBinding是从SilverSilver实用程序应用程序SlSvcUtil.exe生成客户端代码。

SLsvcUtil.exe /directory:C:\users\me\Desktop http://URL.svc

那应该在它生成的文件内部创建一个MyInterfaceClient类。

然后,您可以在代码中执行以下操作:

var binding = new BasicHttpBinding() {
    Name = "BindingName",
    MaxBufferSize = 2147483647,
    MaxReceivedMessageSize = 2147483647
};

var endpoint = new EndpointAddress("URL.svc");

MyInterfaceClient client = new MyInterfaceClient(binding, endpoint);

client.WSFunctionCompleted += (object sender, WSFunctionCompletedEventArgs e) => {
    //access e.Result here
};

client.WSFunctionAsync("XXXXXX");

你的旅费可能会改变。让我知道这个是否奏效。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以编程方式创建dijit TextBox?

来自分类Dev

如何以编程方式创建Google帐户?

来自分类Dev

如何以编程方式创建Func <>委托

来自分类Dev

Django:如何以编程方式创建组

来自分类Dev

如何以编程方式创建UINavigationBar

来自分类Dev

如何以编程方式创建Spring FtpOutboundChannelAdapter?

来自分类Dev

如何以编程方式创建布局约束

来自分类Dev

如何以编程方式创建UIButton

来自分类Dev

如何以编程方式创建Unwind segue

来自分类Dev

如何以编程方式创建客户?

来自分类Dev

如何以编程方式创建CardView

来自分类Dev

如何以编程方式创建Kendoui网格

来自分类Dev

如何以编程方式创建滚动视图

来自分类Dev

如何以编程方式创建Spring PublishSubscribeChannel

来自分类Dev

Django:如何以编程方式创建组

来自分类Dev

如何以编程方式从Java创建XML?

来自分类Dev

如何以编程方式创建dijit TextBox?

来自分类Dev

如何以编程方式创建Unwind segue

来自分类Dev

如何以编程方式创建序列?

来自分类Dev

如何以编程方式创建链接按钮?

来自分类Dev

如何以编程方式创建 PDFOutline

来自分类Dev

如何以编程方式创建图片框

来自分类Dev

如何以编程方式创建和构建.exe?

来自分类常见问题

如何以编程方式创建UIImage视图-Swift

来自分类Dev

如何以编程方式访问使用<ui:define>创建的内容?

来自分类Dev

如何以编程方式创建Excel“排序/筛选组合框”?

来自分类Dev

如何以编程方式创建Polymer元素的实例?

来自分类Dev

如何以编程方式创建android形状背景?

来自分类Dev

如何以编程方式创建Google服务帐户凭据?