如何在.NET中序列化不可序列化的对象

时间:2011-01-21 12:26:21

标签: c#

我有第三方dll。从那里我收到某种类型的对象(我知道它的界面,但不是所有的对象)。该对象未标记为可序列化,我根本不涉及该libruary开发。

我希望将其序列化到某个存储空间,然后从存储中接收相同的状态(公共/私有,引用等)。我在这里有一个选项 - 使我自己的序列化机制与.NET序列化器一样,只有区别 - 它不会修改序列化属性。

这是最好的方法吗?

感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用XmlSerializerDataContractSerializer序列化未标有SerializableAttribute的类型。

可能还有其他选择。如果没有任何作用,可以随时进行自定义实施。

答案 1 :(得分:0)

您可以创建自己的类继承该对象并将其序列化 或者,您可以创建自己的该类副本,并制作一些明确的(或隐式的,但不推荐的)转换方法。