我需要将 VB 集合转换为现代集合,例如 Dictionary 或 Hashtable。对于我的方法,我需要 Collection 的 KEYS。谷歌搜索告诉我这是不可能的。
使用新集合重写整个应用程序不是一种选择,因为该应用程序确实又旧又大(从 VB6 转换为 VB.Net)。使用旧的 Collection 也不好——因为有新的组件正在开发中。
将 - 例如 - Hashtable 转换为 Collection 工作:
using VBCollection = Microsoft.VisualBasic.Collection;
public static VBCollection ToVBCollection(this Hashtable table)
{
var collection = new VBCollection();
foreach (DictionaryEntry pair in table)
{
collection.Add(pair.Value, pair.Key as string);
}
return collection;
}
转换 VBCollection 不会,因为我不知道如何检索密钥:
using VBCollection = Microsoft.VisualBasic.Collection;
public static Hashtable ToHashtable(this VBCollection Collection)
{
var table = new Hashtable();
foreach (var pair in Collection)
{
table.Add(pair.Key, pair.Value); //I need the key and the corresponding value
}
return table;
}
有什么建议吗?如果确实不可能检索密钥(谢谢,Microsoft),那么我应该如何将 VB COllection 转换为现代的东西?
提前致谢