为NonAsync方法创建异步包装器

时间:2016-04-06 02:27:20

标签: c#

我正在为Asp.Net Identity UserStore编写一个中间件,其中调用者期望一个Task和Method被调用的是NonAsynch。

Task.FromResult

如何从res和邮票中返回任务?试过{{1}},但它说只允许一个类型参数。

1 个答案:

答案 0 :(得分:1)

所以你的代码可能变成这样的东西:

Task

或者您可以使用Task.FromResult让您的方法等待:

async Task IUserSecurityStampStore<T, string>.SetSecurityStampAsync(T user, string stamp)
{
    var res = await Task.Run(() => Utility.SetSecurityStamp(user, stamp));
    var identityUser = ToIdentityUser(res);
    SetApplicationUser(user, identityUser);
}