如何创建基于继承的序列化机制?

时间:2010-02-15 13:32:21

标签: c# .net reflection inheritance serialization

我想创建一个序列化机制,以处理各种实体,所有实体都是基于的 在几个基类上。 现在我想使用DataContractSerializer,所以我需要用[DataContract]标记我的所有类。 但是我不想这样做,因为对于我团队的其他成员来说这是一个很大的错误空间。相反,我想在我的基类上放置一个singel属性,而不用担心我添加的每个calss。

我实际上更愿意从[DataContract]继承,如果我希望改变机制,我只需要更改我的继承属性而不是我的所有类(对于[DataMember]也是如此)。 现在问题是DataContractAttribute是一个封印类。

我想到了3个解决方案,但我不知道如何实现其中任何一个......

首先,我听到一个rommer,有一种方法可以从一个封印的类继承,这将是一个很大的问题并且拯救我一个        很多模糊。

第二次,我知道通过反射,可以在运行时更改类并重新编译回运行时,         所以我想创建我的on属性,并在运行时将所有自定义属性替换为
        [DataContract]

第三次,使用某种预编译工具,用[DataContract]替换我的属性

所以,如果你知道如何实现这三个中的任何一个(第一个和第三个首选),或者如果你有其他想法,那就太棒了。

谢谢。

1 个答案:

答案 0 :(得分:0)

嗯......不要那样做。只是没有。相信我。

Mentor团队成员并按设计使用框架。你会得到更多的里程。

字....