加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 04:24:33 所属栏目:百科 来源:网络整理
导读:我正在将Dictionary序列化为 XML.当我创建一个新的字典时,我使用构造函数来提供没有外壳的EqualityComparer var tabs = new Dictionarystring,Tab(StringComparer.OrdinalIgnoreCase); 然后我序列化为XML,当我反序列化有关套管的信息丢失时 – 使用GenericEq
我正在将Dictionary序列化为 XML.当我创建一个新的字典时,我使用构造函数来提供没有外壳的EqualityComparer
var tabs = new Dictionary<string,Tab>(StringComparer.OrdinalIgnoreCase);

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

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

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

更新:

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

解决方法

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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读