• 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>
  • 相关阅读:
    【bzoj2561】最小生成树 网络流最小割
    【bzoj4407】于神之怒加强版 莫比乌斯反演+线性筛
    【bzoj4816】[Sdoi2017]数字表格 莫比乌斯反演
    【bzoj3252】攻略 贪心+DFS序+线段树
    【bzoj1690】[Usaco2007 Dec]奶牛的旅行 分数规划+Spfa
    【bzoj3291】Alice与能源计划 模拟费用流+二分图最大匹配
    【bzoj2752】[HAOI2012]高速公路(road) 线段树
    wpf--- TextBlock文字设置属性
    无边框WPF窗体——允许拖动
    C# 枚举、字符串、值的相互转换
  • 原文地址:https://www.cnblogs.com/ZxtIsCnblogs/p/7136765.html
Copyright © 2020-2023  润新知