最佳.NET方法来创建一个XML文档 [英] Best .net Method to create an XML Doc
问题描述
我试图找出最好的方法是什么编写XML文档。下面是什么,我想创建过的数据我从我们的ERP系统中提取一个简单的例子。我看了一下XMLWriter的,但想到我会看看是否有其他更好的方法。任何建议,将不胜AP preciated。
示例XML:
< XML版本=1.0&GT?;
<订单>
<令ORDERNUMBER =12345>
< ItemNumber> 0123993587< / ItemNumber>
<数量> 10< /数量>
<仓储GT; PA019< /仓储GT;
< /排序>
<令ORDERNUMBER =12346>
< ItemNumber> 0123993587< / ItemNumber>
<数量> 9< /数量>
<仓储GT; PA019< /仓储GT;
< /排序>
<令ORDERNUMBER =12347>
< ItemNumber> 0123993587< / ItemNumber>
<数量> 8示/数量>
<仓储GT; PA019< /仓储GT;
< /排序> < /订单>
乔什的回答显示了它是多么容易在LINQ创建一个单一的元素,以XML ...它不显示怎么也非常容易地创建多个元素。假设你有一个名单,其中,排序>
名为订单
...你可以创建这样整个文档:
VAR XML =新的XElement(订单,
orders.Select(为了=>
新的XElement(订单,
新XAttribute(ORDERNUMBER,order.OrderNumber)
新的XElement(ItemNumber,order.ItemNumber)
新的XElement(数量,order.Quantity)
新的XElement(仓库,order.Warehouse)
));
);
的LINQ to XML使构造XML非常容易。它还具有XML命名空间是pretty的易得的支持。举例来说,如果你想你的内容是在一个特定的命名空间中,你只需要:
的XNamespace NS =HTTP://你的/空间/这里;
VAR XML =新的XElement(NS +订单,
orders.Select(为了=>
新的XElement(NS +订单,
...(的code其余如前)
的LINQ to XML是最好的XML API,我曾经使用过...这是伟大的查询了。
I am trying to figure out what the best method is for writing an XML Document. Below is a simple example of what I am trying to create off of data I am pulling from our ERP system. I have read about XMLWriter, but thought I would see if there are any other better methods. Any suggestions would be greatly appreciated.
Example XML:
<?xml version="1.0"?>
<Orders>
<Order OrderNumber="12345">
<ItemNumber>0123993587</ItemNumber>
<QTY>10</QTY>
<WareHouse>PA019</WareHouse>
</Order>
<Order OrderNumber="12346">
<ItemNumber>0123993587</ItemNumber>
<QTY>9</QTY>
<WareHouse>PA019</WareHouse>
</Order>
<Order OrderNumber="12347">
<ItemNumber>0123993587</ItemNumber>
<QTY>8</QTY>
<WareHouse>PA019</WareHouse>
</Order> </Orders>
Josh's answer shows how easy it is to create a single element in LINQ to XML... it doesn't show how it's also hugely easy to create multiple elements. Suppose you have a List<Order>
called orders
... you can create the whole document like this:
var xml = new XElement("Orders",
orders.Select(order =>
new XElement("Order",
new XAttribute("OrderNumber", order.OrderNumber),
new XElement("ItemNumber", order.ItemNumber),
new XElement("QTY", order.Quantity),
new XElement("Warehouse", order.Warehouse)
));
);
LINQ to XML makes constructing XML incredibly easy. It also has support for XML namespaces which is pretty easy too. For instance, if you wanted your elements to be in a particular namespace, you'd just need:
XNamespace ns = "http://your/namespace/here";
var xml = new XElement(ns + "Orders",
orders.Select(order =>
new XElement(ns + "Order",
... (rest of code as before)
LINQ to XML is the best XML API I've worked with... it's great for querying too.
这篇关于最佳.NET方法来创建一个XML文档的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!