字典中的泛型作为方法的输入
本文关键字:方法 输入 泛型 字典 | 更新日期: 2023-09-27 18:18:19
我正在尝试创建一个接受Dictionary作为输入的方法。
但是,当我尝试添加以下内容时:
public void WriteToJsonFile(Dictionary<string, T> dicList)
{
... stuff
}
它将声明T缺少一个程序集或引用。现在,我通过添加
解决了这个问题<T>
替换为类名,因此它将是泛型类。我是否正确使用字典类,因为我想要的只是创建一个方法,将接受一个字典,其中的关键是一个字符串,但值可以是任何对象?
我通过在类名中添加
<T>
来解决这个问题,因此它将是一个泛型类。
你不应该这样做,除非你特别需要类是泛型的。
所有我想要的是创建一个方法,将接受一个字典,其中关键是一个字符串,但值可以是任何对象?
你所需要的只是一个Dictionary<string,object>
:这样,一个字典可以有不同类型的对象,所有的键都是字符串。更好的是,您可以使用IDictionary<string,object>
让您的类用户传递IDictionary<K,V>
接口的其他实现。
如果你使用的是泛型方法,你应该把它标记为泛型:
public void WriteToJsonFile<T>(Dictionary<string, T> dicList)
{
}