有没有办法简化或清理等待方法的过程,并且没有涉及第二行新代码的结果?例如
var someResult = (await SomeMethodCall(someParameter)).ToList()
或者是使用await时从SomeMethodCall返回列表的最佳做法吗?
答案 0 :(得分:1)
我可以想到两种方法。
如果您可以修改SomeMethod
,只需在其结果中加入.ToList()
并更改其返回类型。
var someResult = (await SomeMethodCall(someParameter));
否则我将应用装饰器模式并创建一个新方法
public List<OldReturnType> SomeMethodAsList(someParameter)
{
return SomeMethod(someParameter).ToList();
}
然后异步调用新方法:
var someResult = (await SomeMethodAsList(someParameter))