使用 XmlSerializer 获取列表时可以省略干预级别吗?
我的问题最好用一个简单的例子来描述。考虑这样的 2 个类:
class Order {
[XmlAttribute] int orderId;
[XmlAttribute] int customerId;
List<OrderItem> items;
}
class OrderItem {
[XmlAttribute] int partCode;
[XmlAttribute] int quantity;
}
使用 XmlSerializer,这将序列化为这样的内容:
<order orderId="...", customerId="..." >
<Items>
<orderItem partCode="..." quantity="..." />
</Items>
</order>
我想要做的是删除
有什么办法可以做到这一点吗?
my question is best described by a simple example. consider 2 classes like this:
class Order {
[XmlAttribute] int orderId;
[XmlAttribute] int customerId;
List<OrderItem> items;
}
class OrderItem {
[XmlAttribute] int partCode;
[XmlAttribute] int quantity;
}
using XmlSerializer, this will serialize to something like this:
<order orderId="...", customerId="..." >
<Items>
<orderItem partCode="..." quantity="..." />
</Items>
</order>
what I want to do is remove the <Items> level so that the <orderItem> elements go straight underneath the corresponding <order>
is there any way to do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用
XmlElement
属性:使用此属性,您还可以为
OrderItem
对象指定自定义元素名称,甚至为的每个子类型指定不同的元素名称订单项目
Use the
XmlElement
attribute:With this attribute you can also specify a custom element name for the
OrderItem
objects, or even a different element name for each sub-type ofOrderItem