使用Linq to xml 动态创建Xml文件(数据来自数据库)

LINQto XML 是一种启用了 LINQ 的内存XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML。

using System.Data.Linq;
using System.Xml.Linq;
using System.Xml;
using System.Text;

    //数据库连接字符串
    GuestBookDataContext ctx = new GuestBookDataContext("server=.;database=GuestBook;uid=sa;pwd=sa");

    var info = from tb in ctx.tbGuestBook select tb;
        
        //声明xml,从foreach开始循环item,把info的数据循环写入xml
         XElement contacts = new XElement("rss", new XAttribute("version", "2.0"), 
            new XElement("item"));
        //这里开始循环写数据 
        foreach (var p in info)
        {
            contacts.Element("item").Add(
            new XElement("items",
            new XElement("ID", p.ID),
            new XElement("Name",p.UserName),
            new XElement("DateTime", p.PostTime),
            new XElement("Content", p.Message),
            new XElement("Replied", p.IsReplied),
            new XElement("Reply",p.Reply)
            ));
        } 

        //这里开始操作xml是写入具体的xml文件还是直接输出 
      //如果是写入文件的话用这个 
        contacts.Save("I:/C#练习/item.xml"); 
      //如果是输出的话, 先设好输出的类型"text/xml" 
      Response.ContentType = "text/xml"; 
      using (XmlWriter writer = new XmlTextWriter(Response.OutputStream, Encoding.UTF8)) 
      //用contacts的WriteTo方法来写 
      contacts.WriteTo(writer); 
      //这样就OK啦 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值