Visual Studio不生成PollingDuplex代理客户端

时间:2012-10-02 19:50:52

标签: wcf silverlight pollingduplexhttpbinding

Visual Studio不会为我的PollingDuplex代理创建构造函数。 WCF客户端应该有8个构造函数,其构造函数包括HttpPollingDuplexBinding对象和端点地址。但是只有5个重载,客户端没有Callback方法。 我该如何解决这个问题?

        var address = new EndpointAddress("http://"
            + App.Current.Host.Source.DnsSafeHost
            + ":"
            + App.Current.Host.Source.Port.ToString(CultureInfo.InvariantCulture)
            + "/PService.svc");
        return new ServiceClient(binding, address);

1 个答案:

答案 0 :(得分:0)

这是一个已知问题,如此处所述

http://blogs.msdn.com/b/silverlightws/archive/2010/04/04/some-known-wcf-issues-in-silverlight-4.aspx

但仍然无法生成所有构造函数。虽然我相信这可能是面对这个问题的人的答案。

编辑:

很奇怪。

[ServiceContract]
public interface IMyCallback
{

    [OperationContract(IsOneWay = true, AsyncPattern = true)]
    IAsyncResult BeginNotify(Message message, AsyncCallback callback, object state);
    void EndNotify(IAsyncResult result);

    [OperationContract(IsOneWay = true)]
    void OnX();
}

工作正常。但是这个

[ServiceContract]
public interface IPokerClient
{

    [OperationContract(IsOneWay = true)]
    void OnX();

    [OperationContract(IsOneWay = true, AsyncPattern = true)]
    IAsyncResult BeginNotify(Message message, AsyncCallback callback, object state);
    void EndNotify(IAsyncResult result);

}

在这里工作不正常。我不知道,但我只是改变了这一点,并获得了具有回调函数的代理。