xml与asp.net(增删改查)

 

  protected void addToXml_Click(object sender, EventArgs e)

    {

        XmlDocument xmlDoc = new XmlDocument();

        xmlDoc.Load(Server.MapPath("xml/XMLFile.xml"));

        //创建新的节点

        XmlElement newElement = xmlDoc.CreateElement("poems");

        XmlElement elid = xmlDoc.CreateElement("id");

        XmlElement elauthor = xmlDoc.CreateElement("author");

        XmlElement elcontent = xmlDoc.CreateElement("content");

            //XMLFile.xml文档中的形式

            //<poems>

            //<id>1</id>

            //<author>王维</author>

            //<title>竹里馆</title>

            //<content>独坐幽篁里,弹琴复长啸。深林人不知,明月来相照。</content>

            //</poems>

        //为创建的节点传值

        elid.InnerText = TextBox1.Text.Trim();

        elauthor.InnerText = TextBox2.Text.Trim();

        elcontent.InnerText = TextBox3.Text.Trim();

 

        //把element添加到newElement下

        newElement.AppendChild(elid);

        newElement.AppendChild(elauthor);

        newElement.AppendChild(elcontent);

 

        //把newElement添加到xmlDoc下

        xmlDoc.DocumentElement.AppendChild(newElement);//默认就是最后一条记录的后面

 

        //如果要插到某条记录之后也可以用(加在第一条记录之后)

        //xmlDoc.DocumentElement.InsertAfter(newElement,xmlDoc.DocumentElement.ChildNodes.Item(0));

        //如果要插到某条记录之前也可以用(加在第一条记录之前)

        //xmlDoc.DocumentElement.InsertBefore(newElement,xmlDoc.DocumentElement.ChildNodes.Item(0));

        //存盘

        xmlDoc.Save(Server.MapPath("xml.xml"));

    }

}

 

 

 

 

 

//这里是读取xml中的数据----我用的是datalist绑定----关键就是readxml()

 

 protected void Page_Load(object sender, EventArgs e)

    {

        DataSet ds = new DataSet();

        ds.ReadXml(Server.MapPath("xml/XMLFile.xml"));

        if (ds.Tables.Count > 0)

        {

            DataList1.DataSource = ds.Tables[0].DefaultView;

            DataList1.DataBind();

        }

    }

 

另一种方法:使用dataset.readxml

 

 DataSet ds = new DataSet();

        ds.ReadXml(Server.MapPath("xml/XMLFile.xml"));

        GridView1.DataSource = ds.Tables[0].DefaultView;

        GridView1.DataBind();

 

 

protected void searchFromXml_Click(object sender, EventArgs e)

{

 

 XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(Server.MapPath("xml/XMLFile.xml"));

            //按id精确查找

            XmlNodeList xmlNodeList = xmlDoc.SelectNodes("smallfoolsRoot/poems[id='"+TextBox1.Text.Trim()+"']");

            //模糊查找

            //XmlNodeListxmlNodeList1=xmlDoc.SelectNodes("smallfoolsRoot/poems[contains(author,'"+TextBox1.Text.Trim()+"')]");

            XmlNode xmlNode = xmlNodeList.Item(0);

            Label1.Text = xmlNode["author"].InnerText;

            Label2.Text = xmlNode["id"].InnerXml;

            Label3.Text=xmlNode["content"].InnerText;

}

 

 

 

 

 protected void feleteFromXml_Click(object sender, EventArgs e)

    {

        XmlDocument xmlDoc = new XmlDocument();

        xmlDoc.Load(Server.MapPath("xml/XMLFile.xml"));

        XmlNodeList xmlNodeList = xmlDoc.SelectNodes("smallfoolsRoot/poems[id='"+TextBox1.Text.Trim()+"']");

        XmlNode xmlNode = xmlNodeList.Item(0);

        xmlNode.ParentNode.RemoveChild(xmlNode);

        xmlDoc.Save(Server.MapPath("xml/XMLFile.xml"));

    }

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值