关闭

ASP.net Xml

标签: asp.net
357人阅读 评论(0) 收藏 举报
分类:

ASP.net Xml: ASP.net操作Xml

 专题图ylbtech-asp.net-logo编号:ylbtechASPnetXml100010010

 

 

XML课件PPT【在线PPT课件倡导者-ylb】

 

   http://wenku.baidu.com/view/bfac3ebe1a37f111f1855bc2.html

 

1,功能描述

   这是一个基于.net操作Xml的案例示例,对Vote.xml文档的CRUD(增读改删)操作。本配有PPT课件供大家参考学习。

 

2,技术与环境

 

操作系统:

windows

开发语言:

C#

开发框架:

 

数据库:

开发软件:

Microsoft Visual Studio 2010

开发技术:

 ASP.net+Xml

课程总策划:

yuanbo

成员:

null

个人主页:

http://www.cnblogs.com/ylbtech/

科研团队:

ylbtech

教研团队:

ylbtech

 

3,/Vote.xml
复制代码
<?xml version="1.0" encoding="utf-8"?>
<vote>
  <item belong="三国演义">
    <id>1</id>
    <name>晓梅</name>
    <number>60</number>
  </item>
  <item belong="西游记">
    <id>2</id>
    <name>小骆</name>
    <number>34</number>
  </item>
  <item belong="天涯">
    <id>3</id>
    <name>莫离</name>
    <number>110</number>
  </item>
</vote>
复制代码

 

4,/App_Code/VoteInfo.cs
复制代码
using System;

/// <summary>
///Vote 的摘要说明
/// </summary>
public class VoteInfo
{
    // 1, Attributes
    /// <summary>
    ///  图书名称
    /// </summary>
    string _belong;
    /// <summary>
    /// 编号
    /// </summary>
    string _id;
    /// <summary>
    /// 作者
    /// </summary>
    string _name;
    /// <summary>
    /// 书本数量
    /// </summary>
    string _number;

    // 2, Struct

    public VoteInfo(string belong, string id,string name, string number)
    {
        this._belong = belong;
        this._id = id;
        this._name = name;
        this._number = number;
    }

    public VoteInfo()
    {
    }

    //封装字段


    public string Belong
    {
        get { return _belong; }
        set { _belong = value; }
    }

    public string Id
    {
        get { return _id; }
        set { _id = value; }
    }

    public string Name
    {
        get { return _name; }
        set { _name = value; }
    }

    public string Number
    {
        get { return _number; }
        set { _number = value; }
    }
}
复制代码

 

5,/DemoXml.aspx.cs  ylb_tip: 这儿是.net对Xml操作的核心代码区,请认真看,一定要把PPT课件看完,对根节点和节点要理解透

 

复制代码
using System;

using System.Xml;
public partial class DemoXML : System.Web.UI.Page
{
   
    /// <summary>
    /// ylb:1, 遍历xml文档
    /// </summary>
    private void BianLi()
    { 
    
        //提取xml文档
        XmlDocument xd = new XmlDocument();
        xd.Load(Server.MapPath("Vote.xml"));

        //获取根节点
        XmlNode root = xd.DocumentElement;

        //获取节点列表
        XmlNodeList items = root.ChildNodes;

        //遍历item项
        Response.Write("<pre>");
        foreach (XmlNode item in items)
        { 
            //输出属性
            Response.Write(item.Attributes["belong"].Name+"="+item.Attributes["belong"].InnerText+"\t");
            //输出子节点
            foreach (XmlNode p in item)
            {
                Response.Write(p.Name+"="+p.InnerText+"\t");
            }
            Response.Write("\n");
        }
        Response.Write("</pre>");


    }

    /// <summary>
    /// ylb:2, 添加
    /// </summary>
    /// <param name="item"></param>
    private void Add(VoteInfo item)
    { 
        //提取xml文档
        XmlDocument xd = new XmlDocument();
        xd.Load(Server.MapPath("Vote.xml"));

        //获取根节点
        XmlNode root = xd.DocumentElement;

        //创建元素
        XmlElement newItem = xd.CreateElement("item");

        XmlElement newID = xd.CreateElement("id");
        XmlElement newName = xd.CreateElement("name");
        XmlElement newNumber = xd.CreateElement("number");

        //配参
        newItem.SetAttribute("belong", item.Belong);    //设置属性

        newID.InnerText = item.Id;  //设置内容
        newName.InnerText = item.Name;
        newNumber.InnerText = item.Number;

        //装配,实现其组织结构
        root.AppendChild(newItem);

        newItem.AppendChild(newID);
        newItem.AppendChild(newName);
        newItem.AppendChild(newNumber);

        //保存xml文档
        xd.Save(Server.MapPath("Vote.xml"));
        
    }

    /// <summary>
    /// ylb:3, 修改一项
    /// </summary>
    /// <param name="vote"></param>
    private void Update(VoteInfo vote)
    {
        //提取xml文档
        XmlDocument xd = new XmlDocument();
        xd.Load(Server.MapPath("Vote.xml"));

        //获取根节点
        XmlNode root = xd.DocumentElement;

        //获取节点类表
        XmlNodeList items = root.ChildNodes;

        //循环节点
        foreach (XmlNode item in items)
        {
            //再循环节点
            foreach (XmlNode p in item)
            {
                if (p.Name == "id" && p.InnerText == vote.Id)
                {
                    //则修改这一项

                    //重设belong的值
                    item.Attributes["belong"].InnerText = vote.Belong;
                    //((XmlElement)item).SetAttribute("belong", vote.Belong);

                    //给该节点(id)下的节点赋值
                    p.NextSibling.InnerText = vote.Name;
                    p.NextSibling.NextSibling.InnerText = vote.Number;
                }
            }
        }
        //保存xml文档
        xd.Save(Server.MapPath("Vote.xml"));
    }

    /// <summary>
    /// ylb:4, 删除一项
    /// </summary>
    /// <param name="id"></param>
    private void Delete(string id)
    { 
        //提取xml文档
        XmlDocument xd = new XmlDocument();
        xd.Load(Server.MapPath("vote.xml"));

        //获取根节点
        XmlNode root = xd.DocumentElement;

        //获取节点列表
        XmlNodeList items = root.ChildNodes;

        //循环节点
        foreach (XmlNode item in items)
        {
            foreach (XmlNode p in item)
            {
                if (p.Name == "id" && p.InnerText == id)
                { 
                    //移除该项
                    root.RemoveChild(item);                    
                }
            }
        }
        //保存xml文档
        xd.Save(Server.MapPath("Vote.xml"));
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        //调用展示
        //ylb: 2,
        VoteInfo item = new VoteInfo("袁博自传", "4", "ylb", "100");
        //Add(item);

        //ylb: 3, 根据id=3,修改 belong="天涯" name="莫离",number=110
        VoteInfo item2 = new VoteInfo("天涯", "3", "莫离", "110");
        //Update(item2);

        //ylb: 4, 删除id=4的项
        Delete("3");

        //ylb: 1, 遍历Xml文档
        //BianLi();
    }
}
复制代码

 

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

在asp.net 中应用POST传递和接收XML文件以及参数.

使用POST方式可以向别的页面发送请求,并获取返回结果。 可以从一个页面发送POST到另一个页面,也可以在winform工程中使用HTTPRequest发送POST到一个页面。我们拿ASP.NET的...
  • ououou123456789
  • ououou123456789
  • 2013-03-14 14:16
  • 9160

ASP.NET读写XML文件

ASP.NET中利用序列化与反序列化来操作xml文件。
  • itmaxin
  • itmaxin
  • 2015-04-01 17:31
  • 1540

Asp.net 4.0 menu 控件样式 + XML 文件配置

本人对WEB UI的设计工作做的很少,多数时间是在后端开发,这个例子做过了,记录下来,以后做个参考菜单效果如下菜单上面有鼠标经过的变背景色,和字体加粗变颜色的效果,不方便截图,这里就算了样式文件 to...
  • lee576
  • lee576
  • 2013-06-21 13:58
  • 2917

ASP.NET中读取XML文件4种方法

参考文章:http://www.cnblogs.com/maoyu417/archive/2007/11/02/946901.html一共有四种方法,创建一个asp.net项目,下面有四个页面,如下图...
  • xw13106209
  • xw13106209
  • 2011-04-27 21:00
  • 5996

Asp.net_输出XML文件

输出XML文件方法示例 .aspx.cs using System.Xml;//xml测试学习用 protected void btnXML_Click(object sender, ...
  • ls_man
  • ls_man
  • 2012-12-04 17:19
  • 1948

Asp.Net 操作XML文件的增删改查 利用GridView

主要利用Asp.Net生成XML文件
  • jianxuanbing
  • jianxuanbing
  • 2014-09-27 11:33
  • 1866

asp.net创建XML文件的方法小结

方法一:按照XML的结构一步一步的构建XML文档. 通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的 方法二:直接定影XML文档,然后保存到文件。 通...
  • hoiven
  • hoiven
  • 2016-05-10 13:58
  • 472

中国省份城市级联选择--asp.net +jquery +json +xml

以前用.net实现中国省份城市的级联选择,但是ajax是用.net的scripManager和updatePanel来实现的,总感觉有点类似于作弊器的感觉,而且有些朋友似乎对这个。net服务端控件很是...
  • hou_yongkui
  • hou_yongkui
  • 2011-01-20 16:50
  • 2605

asp.net修改xml文件

在c#web开发中很对时候都用到了编辑xml文件。现贴出源码,供大家学习参考。 1.xml文件。         王维     竹里馆     独坐幽篁里,弹琴复长啸。...
  • wanglei_samrtfish
  • wanglei_samrtfish
  • 2011-07-03 21:43
  • 2107

asp.net 导出excel(xls)文件 资料 --- 之一: xml文件格式导出

1.通过xml文件格式导出:         http://www.xue5.com/itedu/200802/107215_9.html    记得以前直接把gridview导出称excel,虽然很...
  • renpinghao
  • renpinghao
  • 2011-06-08 12:15
  • 584
    个人资料
    • 访问:48305次
    • 积分:841
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:101篇
    • 译文:1篇
    • 评论:1条
    文章分类
    最新评论