c# - 无法将类型隐式转换为 Func
问题描述
我正在尝试编写一个异步应用程序来从(远程)库中获取值。我偶然发现了一个动作方法,它给出了错误“无法将类型隐式转换为 Func”。
我尝试了各种返回类型...
private static void CallAsynch2()
{
var tasks = new List<Task<KeyValuePair<int,string>>();
for (int i = 0; i < Iterations; i++)
tasks.Add(Task<KeyValuePair<int, string>>.Factory.StartNew(GetValueAction(i)));
}
private static Func<KeyValuePair<int, string>> GetValueAction(int i)
{
return new KeyValuePair<int, string>(i, i.ToString());
//return ClassLibraryService.RandomValue.GetRandomValue(i);
}
我希望它返回值来填充字典。
解决方案
这将返回一个KeyValuePair
:
return new KeyValuePair<int, string>(i, i.ToString());
你想返回Func
它的一个 -tion:
return () => new KeyValuePair<int, string>(i, i.ToString());
推荐阅读
- java - 如何使用while循环添加输入的奇数?
- arrays - Google 表格按最新日期查询唯一值并忽略其他值
- php - 如何从数据库的同一列中的多行中检索数据?
- laravel - 如何在 Vue.js 中将变量推送到另一个组件数组
- javascript - 无法从“navigation/MainNavigator.jsx”解析 X
- sql-server - MS SQL 使用另一个表中的 WHERE 条件
- c++ - 如何在 c++ 中获取有关崩溃程序的一些信息以供将来调试
- sql - 如何通过使用 PostgreSQL 中的联接子句来使用具有动态列数的交叉表
- javascript - 能够在 Jest 中将 json 文件转换为 js
- three.js - 如何使地板完全变白并带有阴影