svcutil忽略异步WCF调用的参数

时间:2011-09-28 23:31:09

标签: c# wcf asynchronous svcutil.exe out

我有一个服务WCF接口:

[ServiceContract(Namespace = "net.pipe://QFX_DLL/TradingService")]
public interface IGenericTradingInterface  {

    [OperationContract]
    void GetServerInformation(out ServerAttributes attributes);
}

此主机正常运行正常。我使用svcutil创建客户端代理对象,如下所示:

svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config net.pipe://localhost/QFX_DLL/mex /async /tcv:Version35

异步调用的生成代理如下所示:

public void GetServerInformationAsync()
{
    this.GetServerInformationAsync(null);
}

如您所见,out参数属性完全缺失!非异步方法看起来很好。 有了这个GetServerInformationAsync声明,我无法得到结果。 这是怎么回事?

1 个答案:

答案 0 :(得分:2)

out参数(和任何结果)将在EventArgs类中,该类传递给GetServerInformation完成时触发的事件(可能是GetServerInformationCompleted)。属性名称将是Result(在一个只返回1个值的操作中可能就是这种情况)或参数名称(属性)。