有谁知道System.Collections.Specialized.StringDictionary对象和System.Collections.Generic.Dictionary之间的实际差异是什么?
我过去一直使用它们而没有考虑哪种方法表现更好,与Linq更好地工作,或者提供任何其他好处.
关于为什么我应该使用一个而不是另一个的任何想法或建议?
如果这是一个愚蠢的问题,我道歉,但请听我说:
Dictionary<string, string> genericDict = new Dictionary<string, string>;
genericDict.Add("blah", "bloop");
// Use the copy constructor to create a copy of this dictionary
return new Dictionary<string, string>(genericDict);
Run Code Online (Sandbox Code Playgroud)
在上面的代码示例中,我可以创建一个通用字典的副本.
现在假设我使用的是System.Collections.Specialized.StringDictionary,因为我不喜欢到处键入"字符串"类型.StringDictionary没有复制构造函数!实际上,它只有默认构造函数.
当然,我可以遍历StringDictionary并手动添加每个键/值对,但我不想:-P
为什么没有复制构造函数?我在这里错过了什么吗?