我正在尝试将signalR组存储在字典中]
但是我不知道如何在HashSet中查找字符串值并返回键字符串?
var dict = new Dictionary<string, HashSet<string>>();
dict["GroupA"] = ["user1","user2","user3"];
dict["GroupB"] = ["user3", "user4"];
dict["GroupC"] = ["user4","user5","user6"];
我想查找“ user3”,它应该返回[“ GroupA”,“ GroupB”]。我不知道如何在C#中使用字典。我大约有2万个群组,其中有许多用户。它是否使用单例模式(存储在内存中)处理过多的组和用户?
[希望有人帮我提供一个可行的例子。我是这里的初学者。谢谢!
您需要在字典上iterate,并获得指向散列集的所有键,该散列包含您要查找的值:
var matches = dict.Where(kvp => kvp.Value.Contains("user3"));
说明:您要查询所有键值对,其中Value(我们知道是Hashset类型)包含要查找的字符串。