当我运行svcutil
没有参数时,我默认获得两个方法,一个同步和一个Task async,如下所示:
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IConsultaDisponibilidade/RetornaDados", ReplyAction="http://tempuri.org/IConsultaDisponibilidade/RetornaDadosResponse")]
string RetornaDados(FastServices.WsConsultaDisponibilidade.Componentes.PedidoEntity dadosPedido);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IConsultaDisponibilidade/RetornaDados", ReplyAction="http://tempuri.org/IConsultaDisponibilidade/RetornaDadosResponse")]
System.Threading.Tasks.Task<string> RetornaDadosAsync(FastServices.WsConsultaDisponibilidade.Componentes.PedidoEntity dadosPedido);
我正在使用客户端和渠道做自己的事情,我不希望生成额外的代码svcutil
,所以我用svcutil /sc ...
运行它。
问题是,当我打开它时,我只创建了同步方法。
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IConsultaDisponibilidade/RetornaDados", ReplyAction="http://tempuri.org/IConsultaDisponibilidade/RetornaDadosResponse")]
string RetornaDados(FastServices.WsConsultaDisponibilidade.Componentes.PedidoEntity dadosPedido);
我还没有找到一种方法来绕过这个选项。
还有吗?
有/a
但会生成这样的开始/结束异步方法:
[System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IConsultaDisponibilidade/RetornaDados", ReplyAction="http://tempuri.org/IConsultaDisponibilidade/RetornaDadosResponse")]
System.IAsyncResult BeginRetornaDados(FastServices.WsConsultaDisponibilidade.Componentes.PedidoEntity dadosPedido, System.AsyncCallback callback, object asyncState);
string EndRetornaDados(System.IAsyncResult result);
我想要使用Task async方法。
有关如何保持合同生成但是自动删除客户端和渠道样板的任何建议?