c# – 使用不区分大小写的字符串比较器初始化字典时序列化字典

c# – 使用不区分大小写的字符串比较器初始化字典时序列化字典,第1张

概述我正在将Dictionary序列化为 XML.当我创建一个新的字典时,我使用构造函数来提供没有外壳的EqualityComparer var tabs = new Dictionary<string,Tab>(StringComparer.OrdinalIgnoreCase); 然后我序列化为XML,当我反序列化有关套管的信息丢失时 – 使用GenericEqualityComparer对字典进行 我正在将Dictionary序列化为 XML.当我创建一个新的字典时,我使用构造函数来提供没有外壳的EqualityComparer
var tabs = new Dictionary<string,Tab>(StringComparer.OrdinalignoreCase);

然后我序列化为XML,当我反序列化有关套管的信息丢失时 – 使用GenericEqualityComparer对字典进行反序列化,这显然是区分大小写的,因为如果它们没有正确套装,它就找不到我的密钥.

任何想法我怎样才能改变它?

一种方法是创建一个新的字典并将数据从反序列化复制到新的字典,但这似乎很麻烦.

更新:

反序列化一直在工作,只是它将序列化的字典序列化为不使用不区分大小写的键的字典.

解决方法 我知道这个问题很老了,但我最近发现自己正在寻找如何做到这一点.

使用.Net4(就像@mare所说),你可以创建一些非常好的扩展方法来使这变得轻而易举.查看https://stackoverflow.com/a/5941122/435460以获得简单易用的实现.

经过大量的挖掘,这对我来说就像是一种魅力.

总结

以上是内存溢出为你收集整理的c# – 使用不区分大小写的字符串比较器初始化字典时序列化字典全部内容,希望文章能够帮你解决c# – 使用不区分大小写的字符串比较器初始化字典时序列化字典所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1263175.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存