【问题标题】:DataTable to XML数据表到 XML
【发布时间】:2012-06-22 19:42:42
【问题描述】:

我有一个数据表,我想构造一个 xml。 我能做到这么远...需要一些帮助。

数据表

factory,  item
---------------
1,  123
1,  345
2,  999

xml 应该是这样的

<test>
 <factory>1</factory>
 <items>
   <item>123</item>
    <item>345</item>
 </items>
</test>

IEnumerable<XElement> files = from f in dt.AsEnumerable() 
                 select new XElement("test", 
                     new XElement("factory", f["factory"]), 
                     new XElement("item", new XElement("item",f["item"])));

上面的查询给了我一个平面 xml

<test>
 <factory>1</factory>
 <items>
   <item>123</item>   
 </items>
</test>
<test>
 <factory>1</factory>
 <items>
   <item>345</item>   
 </items>
</test>

【问题讨论】:

    标签: xml linq datatable using


    【解决方案1】:

    这会返回一个XElement,而不是IEnumerable&lt;XElement&gt;(如果你只想要一个&lt;test&gt;,这是合乎逻辑的,我认为:

    var result= new XElement("test", dt
                                     .AsEnumerable()
                                     .GroupBy(m => m["factory"])
                                     .Select(f =>
                                            new XElement("factory",
                                                f.Key,
                                                new XElement("items", f.Select(g =>  
                                                    new XElement("item", g["item"]))))));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      • 2013-02-20
      • 2012-09-09
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 2021-11-07
      相关资源
      最近更新 更多