2014-04-03 75 views
0

我们经常使用数据集,在填充数据集后,我们可以使用getxml()函数以XML格式获取数据。所以我想知道linq是否存在类似的技术来从linq查询生成xml。请指导。感谢如何从LINQ查询生成XML

IEnumerable<Books> books = Books.GetBooks(); 
    IEnumerable<Salesdetails> sales = 
         Salesdetails.getsalesdetails(); 
    var booktitles = from b in books 
      join s in sales 
      on b.ID equals s.ID 
      select new { Name = b.Title, Pages = s.pages }; 
    foreach (var title in booktitles) 
     lblbooks.Text += String.Format("{0} <br />", title); 
+0

您可以使用数据协定序列化序列化查询结果,这将是XML。 –

回答

1

是的,这里有一个例子:

var rootElement = new XElement("Books", 
       booktitles.Select(
        x => new XElement("Book", 
         new XElement("Name", x.Name), 
         new XElement("Pages", x.Pages)))); 

rootElement.Save("path"); 

你可能想看看文档:Creating XML Trees in C# (LINQ to XML)

+0

如何将xml存储在字符串变量中而不是保存到文件中? – Mou