如何在C#中将Dictionary <>转换为Hashtable?

jpi*_*s14 10 .net c#

我看到很多关于如何将Hashtable转换为Dictionary的问题/答案,但是如何将Dictionary转换为Hashtable?

ask*_*msk 28

最简单的方法是使用Hashtable的构造函数:

        var dictionary = new Dictionary<object, object>();
        //... fill the dictionary
        var hashtable = new Hashtable(dictionary);
Run Code Online (Sandbox Code Playgroud)


Naz*_*ych 8

Dictionary<int, string> dictionary = new Dictionary<int, string>
   {
      {1,"One"},
      {2,"Two"}
   };
Hashtable hashtable = new Hashtable(dictionary);
Run Code Online (Sandbox Code Playgroud)

试试这个


Mar*_*ell 5

似乎很少有人想做,但最简单的是:

var hash = new Hashtable();
foreach(var pair in dictionary) {
    hash.Add(pair.Key,pair.Value);
}
Run Code Online (Sandbox Code Playgroud)

(假设没有不寻常的“实现类型化相等性检查但不实现无类型化相等性检查”等)