Supose余序列与BinaryFormatter第三方库类型的对象。这不引用的assemby这个库尝试反序列化的字节数。将它的工作?

我不希望它被强制转换为正确的类型,我只是想找回它作为object实例,这样就可以组并再次对其进行序列化。

有帮助吗?

解决方案

这应该工作正常,但前提是该库部署与应用。你不需要直接引用它。

在序列化,与该类型信息一起存储BinaryFormatter完整组件名(显示名称,公开密钥令牌,版本号)。这是足够的信息,解串器熄灭,再次加载该程序集。注意没有存储该路径信息,因此需要部署在不反序列化该应用程序集。

其他提示

没有;如果类型本身没有(通过一些加载组件以某种方式)引用,那么它不能被实例化。即使你并不需要(或希望)来引用实例的强类型的方式,对象本身仍然必须是类型的实例。

如果所述组件是可用的(且可发现),那么它将被加载,但是在严格意义上的没有,你将不能够从一个完全未引用的组件反序列化类型。

如果你只是想暂时获得序列信息,以便您可以组它,你能刚刚从序列化流,并将它们组合读取原始字节?也许到List<byte[]>实例?这假定最终目的地可以对由每个字节数组表示的信息的一些假设。

没有,它不会工作,为了反序列化需要引用其中定义对象的组件的对象。

是,如果创建了序列化粘合剂,则可以反序列化类型不同的类型。但你不能够实例化的原始类型的实例没有它的定义(到你需要手头上有装配)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top