是否可以在运行时为Silverlight生成WCF异步服务合同?

时间:2010-09-02 08:30:37

标签: silverlight wcf

我有一个WCF服务合同,内容如下:

    [ServiceContract(Name = "DummyService") ]
    public interface IDummyService {

        [OperationContract]
        void DoSomething();

        [OperationContract(Name = "SayHello")]
        string SayHello(string message);
    }

WCF服务将由Silverlight应用程序使用。我正在寻找一种方法来消除手动编写异步合同的需要,这样我就可以通过ChannelFactory生成的代理来消费它。

我正在考虑编写一个专门的调用类。示例用法如下:

// create the invoker using the endpoint config and the existing sync contract
var client = new ServiceInvoker<IDummyService>("LeyDummyService_Endpoint");

// invoke the desired service method set the callback, very similar to how 
// JQuery does AJAX calls...
client.Invoke(dummyService => dummyService.SayHello("harley"),
             (result) => MessageBox.Show(result));

有没人试过这个?这甚至可能吗?

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用Svcutil?它将为您组成所有异步合同。

答案 1 :(得分:0)