Linq实现XML转换浅谈

学习Linq时,经常会遇到Linq实现XML转换问题,这里将介绍Linq实现XML转换问题的解决方法。

站在用户的角度思考问题,与客户深入沟通,找到永靖网站设计与永靖网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、网络空间、企业邮箱。业务覆盖永靖地区。

Linq实现XML转换,将内存中的对象转换为XML

通过 LINQ 查询,可以轻松地在内存中的数据结构、SQL 数据库、ADO.NET 数据集和XML流或文档之间转换数据。下面的示例是Linq实现XML转换,将内存中的数据结构中的对象转换为XML元素。

 
 
 
  1. class XMLTransform  
  2. {  
  3. static void Main()  
  4. {  
  5. // Create the data source by using a collection initializer.  
  6. List students = new List()  
  7. {  
  8. new Student {First="Svetlana"Last="Omelchenko"ID=111
    Scores = new List{97, 92, 81, 60}},  
  9. new Student {First="Claire"Last="O’Donnell"ID=112
    Scores = new List{75, 84, 91, 39}},  
  10. new Student {First="Sven"Last="Mortensen"ID=113
    Scores = new List{88, 94, 65, 91}},  
  11. };  
  12.  
  13. // Create the query.  
  14. var studentsToXML = new XElement("Root",  
  15. from student in students  
  16. let x = String.Format("{0},{1},{2},{3}", student.Scores[0],  
  17. student.Scores[1], student.Scores[2], student.Scores[3])  
  18. select new XElement("student",  
  19. new XElement("First", student.First),  
  20. new XElement("Last", student.Last),  
  21. new XElement("Scores", x)  
  22. ) // end "student"  
  23. ); // end "Root"  
  24.  
  25. // Execute the query.  
  26. Console.WriteLine(studentsToXML);  
  27.  
  28. // Keep the console open in debug mode.  
  29. Console.WriteLine("Press any key to exit.");  
  30. Console.ReadKey();  
  31. }  

Linq实现XML转换,此代码生成下面的XML输出:

 
 
 
  1. < Root> 
  2.    
  3.     Svetlana 
  4.     Omelchenko 
  5.     97,92,81,60 
  6.    
  7.    
  8.     Claire 
  9.     O'Donnell 
  10.     75,84,91,39 
  11.    
  12.    
  13.     Sven 
  14.     Mortensen 
  15.     88,94,65,91 
  16.    
  17.  

【编辑推荐】

  1. LINQ查询操作经验总结
  2. LINQ遍历多个数组深入剖析
  3. Linq查询Access数据文件浅谈
  4. LINQ构建框架设计学习笔记
  5. LINQ重要组成部分简介

分享名称:Linq实现XML转换浅谈
路径分享:http://www.mswzjz.com/qtweb/news14/167664.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联