【发布时间】:2013-05-09 02:56:14
【问题描述】:
试图将值从现有的 NameValueCollection 对象复制到字典。我有下面的代码可以做到这一点,但似乎 Add 不接受我的键和值是字符串
IDictionary<TKey, TValue> dict = new Dictionary<TKey, TValue>();
public void copyFromNameValueCollection (NameValueCollection a)
{
foreach (var k in a.AllKeys)
{
dict.Add(k, a[k]);
}
}
注意: NameValueCollection 包含字符串键和值,因此我只想在这里提供一种方法,允许将它们复制到 generic 字典。
【问题讨论】:
-
这很令人困惑,因为大概这是在一个通用的 type 中声明
TKey,TValue类型参数 - 而你的 method 声明了这些类型参数。再加上键将始终是字符串的事实......那么如果 TKey 是(比如说)Guid,你期望会发生什么? -
我需要一个通用字典。请注意,这是在构建一个可序列化的字典类,它还允许从 NameValueCollection 对象中复制键和值
-
再一次,如果 TKey 不是字符串会怎样?
标签: c# .net dictionary namevaluecollection