我正在将这个旧代码从.NET移植到.NET Core,其中使用Web服务并实现异步回调以使用该服务。
使用.NETCore的WCF Web服务引用提供程序仅为基于任务的异步创建方法。
我的问题是:
答案 0 :(得分:2)
异步回调(例如BeginRequest()
)和异步/等待(例如await BeginRequestAsync()
)在功能上是相同的,仅在您构建代码以使用异步功能的方式上有所不同。
异步回调是您使用C#< 5.0进行异步编程的唯一方法。在5.0中引入了Async / Await,它是进行异步编程的首选方法,但许多旧的API保持原样,并带有回调方法以实现向后兼容。
使用.Net Core,版本1.0支持C#6.0。由于async / await是处理异步代码的首选设计模式,因此实现异步回调没有任何好处。