【发布时间】:2019-09-09 22:27:17
【问题描述】:
我正在创建几个地图来为我的应用程序缓存一些信息。 当触发某些事件时,我想清除这些缓存。 我有一个我应该清除的所有地图名称的列表,但我找不到动态获取这些地图以清除它们的方法。基本上我有:
var mapsNames = ["map-1", "map-2", "map-3"];
我想要一种简单的方法,例如:
var client = HazelcastClient.NewHazelcastClient();
foreach (var name in mapsNames)
{
var map = client.GetMap(name);
map.Clear();
}
在README.md 中,我们确实有一些示例,例如:
var client = HazelcastClient.NewHazelcastClient();
var personnelMap = client.GetMap("personnelMap");
personnelMap.Put("Alice", "IT");
personnelMap.Put("Bob", "IT");
personnelMap.Put("Clark", "IT");
Console.WriteLine("Added IT personnel. Logging all known personnel");
foreach(var entry in personnelMap.entrySet())
{
Console.WriteLine("{0} is in {1} department", entry.Key, entry.Value );
}
client.Shutdown();
这表明我们应该有一个非泛型方法GetMap,但我找不到它。唯一可用的是GetMap<TKey, TValue>。文档错了吗?有没有办法在不使用丑陋反射的情况下按名称获取地图?
提前致谢,
【问题讨论】:
标签: c# .net-core hazelcast hazelcast-imap