尝试创建一个存储方法的字典,这些方法在Windows窗体中创建东西等等。
该方法不带参数,并返回所有已创建项目的字典。
Dictionary<string, Func<Dictionary<string, dynamic>>> games = new
Dictionary<string, Func<Dictionary<string, dynamic>>>()
{
{ "Buttoncatch", //I dont know what to write here
{
var objects = new Dictionary<string, dynamic>
return objects;
}
}
};
我不想这样做:
public Dictionary<string, dynamic> Buttoncatch()
{
}
games["Buttoncatch"] = Buttoncatch //dont even know what to write here,
problems of self teaching
答案 0 :(得分:0)
为什么字典dynamic
的值类型可以是Func<Dictionary<string,dynamic>>
。
这些方法可以创建为普通的lambdas:
Dictionary<string, Func<Dictionary<string,dynamic>>> games = new
Dictionary<string, Func<Dictionary<string, dynamic>>>
{
{"Buttoncatch",
() => {
var objects = new Dictionary<string, dynamic>
return objects;
}
}
};
当你以这种方式声明字典时,行
games["Buttoncatch"] = Buttoncatch;
也会奏效。