WebService的简单运用添加删除

WebService是一种跨编程语言和跨操作系统平台的远程调用技术,简单来说就是将数据存储到项目的文件夹下

.NET中基于DOM核心类

  XmlDocument 表示一个XML文档

  XmlNode表示XML文档中的单个节点

  XmlNodeList表示排序节点集合

  XmlElement表示一个元素

  XmlAttribyte 表示一个属性

  XmlAttribyteCollection表示元素节点的属性集合

  XmlText表示元素或属性的文本类容

-------------------------------------------------------------------------------------------------------------------------------------

在该控制器中写入如下的添加删除查询代码

[HttpPost]
        public void Index(FormCollection F)
        {
            string xmlPath = Server.MapPath("~/A/") + "_Class.xml";
            XmlDocument doc;
            try 
            {
                string Id = F["Id"];
                string Name = F["Name"];
                string Age = F["Age"];
                string Sex = F["Sex"];
                string Phone=F["Phone"];

                if(!System.IO.File.Exists(xmlPath))
                {
                    //创建XML文档对象
                    doc = new XmlDocument();
                    //创建XML文档描述
                    XmlDeclaration del = doc.CreateXmlDeclaration("1.0", "utf-8", null);
                    //创建根节点
                    XmlNode root = doc.CreateNode(XmlNodeType.Element, "Class", null);
                     //在文档中添加描述
                    doc.AppendChild(del);
                    //在文档中添加根节点
                    doc.AppendChild(root);
                    doc.Save(xmlPath);
                }
                //创建XML文档对象
                doc = new XmlDocument();
                //读取指定的XML文件
                doc.Load(xmlPath);
                //读取XML中的根节点
                XmlElement element = doc.DocumentElement;
                //创建子节点
                XmlElement Stu = doc.CreateElement("Stu");
                //设置XML文本值
                Stu.InnerText = Name;
                //设置XML节点属性
                Stu.SetAttribute("Id", Id);
                Stu.SetAttribute("Sex", Sex);
                Stu.SetAttribute("Age", Age);
                Stu.SetAttribute("Phone", Phone);
                //在根节点中添加子节点
                element.AppendChild(Stu);

                //保存Xml文档到指定路径
                doc.Save(xmlPath);

                Response.Write("<script>alert('添加成功!');window.location.href = '/Home/Index';</script>");
            }
            catch (Exception ex)
            {
                Response.Write("<script>alert('添加失败!');window.location.href = '/Home/Index';</script>");
            }
            
        }


        public ActionResult SelAndDel(string id = "0")
        {
            if (id != "0")
            {
                //进行删除操作
                string xmlPath = Server.MapPath("~/A/") + "_Class.xml";
                XmlDocument doc = new XmlDocument();
                doc.Load(xmlPath);
                XmlElement element = doc.DocumentElement;
                XmlNode node = doc.SelectSingleNode(string.Format("/Class/Stu[@id='{0}']",id));
                node.ParentNode.RemoveChild(node);
                doc.Save(xmlPath);
            }
            else
            {
                string xmlPath = Server.MapPath("~/A/") + "_Class.xml";
                StringBuilder sb = new StringBuilder();
                XmlDocument doc = new XmlDocument();
                doc.Load(xmlPath);
                XmlElement element = doc.DocumentElement;
                //遍历根节点下的所有子节点
                foreach (XmlElement item in element.ChildNodes)
                {
                    sb.Append(string.Format(@"<tr class='odd gradeX'>
                                            <td>{0}</td>
                                            <td>{1}</td>
                                            <td class='hidden-480'>{2}</td>
                                            <td class='hidden-480'>{3}</td>
                                            <td class='center hidden-480'>{4}</td>
                                            <td><a href='/Home/SelAndDel/{5}'>删除</td>
                                        </tr>",
                                        item.Attributes["Id"].Value, item.InnerText,item.Attributes["Age"].Value,
                                        item.Attributes["Sex"].Value, item.Attributes["Phone"].Value, item.Attributes["Id"].Value)
                                        );
                }
                ViewBag.tableText = sb.ToString();
            }
            return View();
        }

在视图页面显示内容的地方写上

@Html.Raw(ViewBag.tableText.ToString())//将在控制器中写的HTML代码字符串转换成HTML代码在前台显示执行

添加成功后就会在你指定的文件夹下生成这个文档将你输入的值保存下来

<?xml version="1.0" encoding="utf-8"?>
<Class>
  <Stu Id="1" Sex="" Age="1" Phone="1">1</Stu>
  <Stu Id="0" Sex="" Age="0" Phone="0">0</Stu>
</Class>
原文地址:https://www.cnblogs.com/ZxtIsCnblogs/p/7136765.html