使用LINQ生成XML [英] Generate XML using LINQ

查看:72
本文介绍了使用LINQ生成XML的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我正在尝试使用LINQ生成XML文件



我想要我的XML应该像



Hi,

I am trying to generate a XML file using LINQ

I want my XML should be like

<?xml version="1.0" encoding="utf-8"?>
<chart caption='Overall DAT Compliance' showLegend='1' yAxisName='% of Compliance and non-compliance' 
        decimalPrecision='0' formatNumberScale='0' >
   <categories>
      <category label='2001' />
      <category label='2002' />
      <category label='2003' />
      <category label='2004' />
      <category label='2005' />
   </categories>
   <dataset seriesName='Product A'>
      <set value='25601' />
      <set value='20148' />
      <set value='17372' />
      <set value='35407' />
      <set value='38105' />
   </dataset>
   <dataset seriesName='Product B'>
      <set value='57401' /> 
      <set value='41941' />
      <set value='45263' />
      <set value='117320' />
      <set value='114845' />
   </dataset>
   <dataset seriesName='Quantity'>
      <set value='4500' />
      <set value='4483' />
      <set value='4283' />
      <set value='7755' />
      <set value='9263' />
   </dataset>
</chart> 





但我得到的XML就像这样





But I am getting the XML as like this

<?xml version="1.0" encoding="utf-8"?>
<chart caption="Sample caption" showLegend="1" yAxisName="% of Compliance and non compliance" showNames="1" 
decimalPrecision="0" formatNumberScale="0">
  <categories>
    <category label="2001" />
  </categories>
  <categories>
    <category label="2002" />
  </categories>
  <categories>
    <category label="2003" />
  </categories>
  <categories>
    <category label="2004" />
  </categories>
  <categories>
    <category label="2005" />
  </categories>
  <dataset seriesName=" Product A">
    <set value=" 25601" />
  </dataset>
  <dataset seriesName=" Product A">
    <set value=" 20148" />
  </dataset>
  <dataset seriesName=" Product A">
    <set value=" 17372" />
  </dataset>
  <dataset seriesName=" Proddut A">
    <set value=" 35407" />
  </dataset>
  <dataset seriesName=" Product A">
    <set value=" 38105" />
  </dataset>
  <dataset seriesName=" Product B">
    <set value=" 57401" />
  </dataset>
  <dataset seriesName=" Product B">
    <set value=" 41941" />
  </dataset>
  <dataset seriesName=" Product B">
    <set value=" 45263" />
  </dataset>
  <dataset seriesName=" Product B">
    <set value=" 117320" />
  </dataset>
  <dataset seriesName=" Product B">
    <set value=" 114845" />
  </dataset>
</chart>





以下是我用过的ASP..NET。





Below is ASP..NET I have used.

string[] source = File.ReadAllLines(@"E:\Sri\sample2.csv");
                    XElement cust = new XElement("chart",
                                    new XAttribute("caption", "Sample caption"),
                                    new XAttribute("showLegend", "1"),
                                        new XAttribute("yAxisName", "% of Compliance and non compliance"),
                                        new XAttribute("showNames", "1"),
                                        new XAttribute("decimalPrecision", "0"),
                                        new XAttribute("formatNumberScale", "0"),
                        
                        from str in source
                        let fields = str.Split(',')
                        select new XElement("categories",
                               new XElement("category",
                                    new XAttribute("label", fields[0]))
                        ),
                        from str in source
                        let fields = str.Split(',')
                        select new XElement("dataset", new XAttribute("seriesName", fields[1]),
                            new XElement("set",
                                new XAttribute("value", fields[2]))),
                        from str in source
                        let fields = str.Split(',') 
                        select new XElement("dataset", new XAttribute("seriesName", fields[3]),
                            new XElement("set",
                                new XAttribute("value", fields[4])))
                    
                );
                    cust.Save(@"E:\Sri\Sample.xml");





请帮助..



Please help..

推荐答案

访问这里......





http://www.dotnet-tricks.com/Tutorial/linq/bTa2310512-Create-xml-from-database-using-LINQ.html [<一个href =http://www.dotnet-tricks.com/Tutorial/linq/bTa2310512-Create-xml-from-database-using-LINQ.html\"target =_ blanktitle =New Window> ^ ]









http://www.intertech.com/Blog/create-an-xml-document-with -linq-to-xml / [ ^ ]
Visit Here...


http://www.dotnet-tricks.com/Tutorial/linq/bTa2310512-Create-xml-from-database-using-LINQ.html[^]


or

http://www.intertech.com/Blog/create-an-xml-document-with-linq-to-xml/[^]


ca你请分享你的csv文件的结构。或者您在csv文件中的内容。
can you please share the structure of your csv file. or the content you have in your csv file.


这篇关于使用LINQ生成XML的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆