0

大家好,请帮我一个忙,我有许多具有相同结构的自定义类,例如它们都有属性模式,并且它们的对象的属性对我序列化很重要,因为我想从许多类中保存许多这些对象在许多应用程序中作为日志记录系统,所以我不能在一个解决方案中收集所有类来反序列化它们。

如果我的解决方案中有类,我可以使用反射来获取它们的属性和值并在数据表中导出属性或在反序列化之后,将对象转换为该类的类型,但我的问题是如何反序列化对象并获得“类型对象属性的“,名称”和“值”,而我的解决方案中没有它们的类。

在这种情况下,当我想反序列化时,会收到此错误消息:“缺少根元素。”

4

1 回答 1

0

正如您所提到的,您可以通过反射检查反序列化的对象,并确保除非您以某种方式拥有对象的类型,否则您可以拥有的一切,我的意思是以前在其他程序集中或在同一个程序集中编译。这意味着您毫无疑问需要组装!

但不要失去勇气。通过反射,您可以从对象中检索您想要的任何东西,除了对象类所在的域所必需的东西。例如,您可以拥有 Product 类的反序列化实例,但您无法识别 Product 类在做什么以及它的存在哲学是什么。这些东西被放在与 Customer、Order、ProductLine、Stock 和该域的其他类相关的 Product 域中。

但是再次希望您可以通过为您的类定义一些标准行为来克服这些问题,这些行为由所有域中的所有类实现。

于 2012-12-08T20:08:18.343 回答