WCF仅Async操作

时间:2017-10-20 08:44:07

标签: c# wcf asynchronous

我有一个客户端同时使用来自WCF服务的async和sync方法。

我认为没有任何理由保留一些同步通话。因为我可以在同步中使用任务调用异步方法。

最好不要在我拨打我的服务时阻止用户界面。

所以我正在尝试删除每个同步调用。 首先,它是WCF的一个很好的实践吗?如果不是为什么?

然后我使用svcutils生成我的文件。我有同步和异步电话。

项目很大,删除同步调用最简单的方法是只使用svcutils生成异步调用。 因此编译错误我只能轻松保持异步。

但我在svcutils上找不到任何禁用同步方法生成的选项。

任何方式都这样做?

1 个答案:

答案 0 :(得分:0)

如果它是UI应用程序,最好只使用异步方法,如你所说 - 在调用期间不阻止UI。

关于svcutil.exe,它不能只创建异步方法并忽略同步。 您可以使用/ async参数,但它会将所有内容创建为异步,这对您不起作用。意思是,最好先手动删除同步方法。