我正在编写一个简单的类来序列化我的IConfiguration
接口,它具有以下方法
IEnumerable<KeyValuePair<string, object>> GetAllProperties();
在我的课堂上,我有一个方法
public void WriteConfiguration(IConfiguration data, Stream stream)
{
new Serializer().Serialize(new StreamWriter(stream), data.GetAllProperties());
}
但是Serializer
不会向流中写入任何内容。我读到的某个地方KeyValuePair
是不可序列化的,但现在不再是这种情况了(它在 .NET 2.0 中)
我首先尝试将 转换IEnumerable
为List
(使用.ToList()
),但没有任何改变。然后我尝试创建一个类来代替KeyValuePair
:
[Serializable]
private class Pair<TKey, TValue>
{
public Pair() { }
public Pair(TKey key, TValue value)
{
Key = key;
Value = value;
}
public TKey Key { get; set; }
public TValue Value { get; set; }
}
但它仍然不起作用。