[英]Generics with Dictionary in c#
我想返回一個字典,但是我可以使用2種鍵,因此我想在返回值中包含T。 有任何想法嗎?
like so
public static Dictionary<string, T> Read<T>(string dicValueType, string path)
{
if(dicValueType.Equals("User"))
{
Dictionary<string, User> usersDictionary =
JsonConvert.DeserializeObject<Dictionary<string, User>>
(File.ReadAllText(path));
return usersDictionary;
}
Dictionary<string, Column> boardDictionary =
JsonConvert.DeserializeObject<Dictionary<string, Column>>
(File.ReadAllText(path));
return boardDictionary;
}
我在“ return usersDictionary;”這一行中遇到錯誤。
您不是要將JSON對象反序列化為泛型的全部。 這將無需所有if-else
檢查即可完成:
public static Dictionary<string, T> Read<T>(string path)
=> JsonConvert.DeserializeObject<Dictionary<string, T>>(File.ReadAllText(path));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.