我正在尝试将我的对象序列化为 xml。序列化程序看似将所有数据成员序列化为子级,但我想将所有成员序列化为属性,而不是子级。
这是一个代码示例:
[DataContract]
public class MyDataClass
{
[DataMember]
int foo = 24;
[DataMember]
string bar = "brabrabra";
}
当我使用 DataContractSerializer 时,这将被序列化为以下 xml:
<MyDataClass xmlns="..." xmlns:i="...">
<foo>24</foo>
<bar>brabrabra</bar>
</MyDataClass>
但是,我想以某种方式将其序列化为以下 xml:
<MyDataClass xmlns="..." xmlns:i="..." foo="24" bar="brabrabra" />
有什么办法可以这样序列化吗?或者,我应该编写自己的序列化器来实现它吗? 作为引用,我在此示例中使用 DataContract 序列化器,但我可以将其更改为普通的 XmlSerializer 或其他序列化器(如果有更好的序列化器)。
希望有人知道这一点。
阿基
最佳答案
看看XMLAttribute 。但仅适用于 XMLSerializer。
关于c# - 如何在 C# 中将类成员序列化为 xml 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3922913/