【发布时间】:2018-03-03 11:13:12
【问题描述】:
我收到错误“数据表不包含 AsParallel 的定义 在我的 Linq 查询中。请告诉我如何解决我做错的事情。
var results = from myRow in dtTaskandBugs.AsParallel()
select myRow;
results.ForAll(async r =>
{
Task<int> storyProcessing = GetStoryid(r["Id"]);
Task<int> fidProcessing = Fidname(r["Storyid"]);
Task<string> featureProcessing = r["FeatureID"].ToString() == "0" ? Task.FromResult("Anonymous") : fname(r["FeatureID"]);
r["Storyid"] = await storyProcessing;
r["FeatureID"] = await fidProcessing;
r["FeatureName"] = await featureProcessing;
});
【问题讨论】:
-
有了下面的答案,它似乎可以工作 - 但你仍然会同时调用一堆
async void方法。您无法控制何时完成,所有异常都会消失在迷雾中。
标签: c# multithreading linq async-await plinq