如何将一个Task存储在字典中以便以后在C#中执行

时间:2016-11-07 16:36:43

标签: c# dictionary dynamic

我正在尝试将一个Task存储在字典中以便以后执行,但没有成功:

string functionToExec()

如果我将该函数声明为

router["xyz"] = new Task<string>(functionToExec);

然后我可以做:

var t = router["xyz"];
var data = Encoding.UTF8.GetBytes(await t);

但是我需要将该函数设置为异步。并且不知道如何调用它。我试过了:

mapJson

没有成功。

感谢。

1 个答案:

答案 0 :(得分:5)

如果您希望以后能够启动异步操作,那么您不希望存储Task,您需要存储Func<Task>(或者,在您的情况下, Func<Task<string>>,因此,当您想要开始操作时,您可以调用该函数,生成表示其完成的Task

相关问题