【发布时间】:2015-05-28 06:55:27
【问题描述】:
问题
给定一个具有许多要序列化的属性的可序列化类,我希望其中一些成为另一个属性。
样本
像这样序列化一个类
[Serializeable]
public class MySerializeableClass {
public string AnyPath { get; set; }
public bool IsActive { get; set; }
}
结果是
<MySerializeableClass>
<AnyPath>C:\</AnyPath>
<IsActive>true</IsActive>
</MySerializeableClass>
但它应该是
<MySerializeableClass>
<AnyPath IsActive="true">C:\</AnyPath>
</MySerializeableClass>
要求
我已阅读here,我可以通过创建一些(可能是通用的)类来实现这一点。这会产生很多额外的代码,特别是因为序列化结构中没有可识别的顺序(这是一个定义的标准)。意味着使其通用化会使它比上面添加的链接更加复杂 - 这就是我想避免这种情况以及我来到这里的原因。
所以总的来说,我正在寻找使用属性的解决方案。但我也对其他可能的解决方案持开放态度。
编辑:
澄清一下,我已经知道创建类来解决这个问题的可能性。我提出这个问题是因为我想避免这种情况,但我不知道该怎么做。
【问题讨论】:
标签: c# serialization