C# 动作字典-包含动作参数

C# 动作字典-包含动作参数,c#,dictionary,C#,Dictionary,我有一个字典,其中键是一个字符串,值是一个包含两个参数(一个字符串和一个字节数组)的操作 private Dictionary handlers=new Dictionary() 然后是一个向字典添加值的函数 public void Bind(string key, Action<string, byte[]> cb) { handlers[key] = cb; } 公共无效绑定(字符串键,动作cb) { 处理程序[key]=cb; } 但是,错误为“无法将System.

我有一个字典,其中键是一个字符串,值是一个包含两个参数(一个字符串和一个字节数组)的操作

private Dictionary handlers=new Dictionary()

然后是一个向字典添加值的函数

public void Bind(string key, Action<string, byte[]> cb)
{
    handlers[key] = cb;
}
公共无效绑定(字符串键,动作cb)
{
处理程序[key]=cb;
}
但是,错误为“无法将System.Action转换为System.Action”


如何更改字典的定义以包含操作参数?

您应该在字典中使用与要分配的类型相同的类型:

private Dictionary<string, Action<string, byte[]>> handlers 
    = new Dictionary<string, Action<string, byte[]>>();
私有字典处理程序=新字典();
public void Bind(string key, Action<string, byte[]> cb)
{
    handlers[key] = cb;
}