我正在将我的一些类转换为使用 DataContractSerialization,以便可以在输出中包含 Linq 实体。在这个过程中,一个理论问题突然出现在我的脑海中,当我打赌答案是“不”时,我想我还是会提出这个问题。
有没有办法有条件地序列化一个对象?例如,如果我为了向客户发送信息而序列化一个 Employee 对象,我可能不想包含地址。另一方面,如果我将其序列化以在管理该员工的网站的 Web 服务中使用,我可能需要该信息。
另一种可能性是根据它们是否是被序列化的基础对象来序列化某些成员。因此,如果我有一个包含 Location 的 Ticket 类,并且 Location 包含一个联系人列表,如果我正在序列化 Ticket,我可能不想要那个联系人列表。但是,如果我尝试使用 Location 本身,那么拥有它可能会很好。
那么对此有什么想法吗?