c# - 如何序列化 IDictionary

标签 c#

有谁知道序列化实现 IDictionary 的对象的创造性方法吗? ...没有实现新类(class)?

最佳答案

如果类实现了IDictionary是可序列化的(如 Dictionary<K,V> )和 KV是可序列化的,那么标准的 .NET 序列化机制应该可以工作。

如果类实现了IDictionary是可序列化的但是 KV然后你可以使用两个数组分别序列化键和关联值:

// before serialization
IDictionary<string,int> dict;
string[] keys = dict.Keys.ToArray();
int[] values = dict.Keys.Select(key => dict[key]).ToArray();

// after deserialization
IDictionary<string,int> dict = new Dictionary<string,int>();
for (int i = 0; i < keys.Length; i++)
    dict.Add(keys[i], values[i]);

关于c# - 如何序列化 IDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1363894/

相关文章:

c# - asp.net CompleteRequest 不会阻止其他回发事件的处理

c# - 在设计模式下使用 visual studio 2012 中的报表查看器时出错

C# 服务器 - TCP/IP 套接字效率

c# - asp.net MVC 4 Ninject OnApplicationStarted()

c# - 从 C# WS 客户端发送的枚举参数被 Java WS 接收为 null

c# - 初学者散列和加盐

c# - 将字典转换为 HashEntry

c# - 在 Windows 7 上运行 LibVLC.NET 示例

c# - 将音频输入转换为时间并使用C#显示

c# - 单个单词的正则表达式