我有一个类 Foo 标记[Serializable]
和实现ISerializable
。我正在尝试通过 DataContractSerializer 对其进行序列化。在 GetObjectData 我这样做:
info.AddValue("Test", new[] { 1,2,3});
它失败了:
元素“:Test”包含“http://schemas.microsoft.com/2003/10/Serialization/Arrays:ArrayOfint”数据合同的数据。反序列化器不知道映射到该合约的任何类型。将与“ArrayOfint”对应的类型添加到已知类型列表中 - 例如,通过使用 KnownTypeAttribute 属性或将其添加到传递给 DataContractSerializer 的已知类型列表中。
我尝试将knownTypes
arg 传递给 DataContractSerializer 构造函数 - 没有帮助。