我希望能够创建客户端看作同步的WCF服务,但是将服务器端实现为异步。我知道ASP.NET允许我通过实现IHttpAsyncHandler来实现这一点,但似乎无法在WCF中找到等价物。
这是一种已经存在的服务,我们希望转移到异步工具服务器端,而无需更改客户端。这可能吗?
答案 0 :(得分:1)
如果您使用的是.Net 4.5,请将服务合同界面中的OperationContract方法更改为Task<type>
而不是类型。在实现接口的类中,在方法上使用async修饰符,并在基于任务的异步模式后使用await inside
见http://msdn.microsoft.com/en-us/library/ms734701
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/DEV326