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 = "")
{
if (id != "")
{
//进行删除操作
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="" Sex="女" Age="" Phone=""></Stu>
<Stu Id="" Sex="女" Age="" Phone=""></Stu>
</Class>
WebService的简单运用添加删除的更多相关文章
- vue简单案例_动态添加删除用户数据
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Angular-表单动态添加删除
angular本身不允许去操作DOM,在angular的角度来说,所有操作都以数据为核心,剩下的事情由angular来完成.所以说,想清楚问题的根源,解决起来也不是那么困难. 前提 那么,要做的这个添 ...
- 表格的一些原生js操作(隔行变色,高亮显示,添加删除,搜索)
看着网上的视频教程,虽说还是有点简单,但还是不免想记录下.这些操作包括(隔行变色,高亮显示,添加删除,搜索功能),而这儿就是涉及table的原有属性“tBodies” “rows” “cells”等几 ...
- DHTMLX 前端框架 建立你的一个应用程序 教程(十一)--添加/删除表格中的记录
添加/删除表格中的记录 我们的最终功能是在表格中添加删除 我们通过单机工具栏上的按钮来实现添加删除 当我们单击添加按钮的时候, 表单中 第一行默认填写New contact 光标自动聚焦 当用户点击删 ...
- JS添加删除一组文本框并对输入信息加以验证
在做项目中遇到这样一个问题,就是我们需要添加几组数据到数据库,但是具体几组数据不确定,有客户来填写,比如我们需要添加打折策略,可能个策略有很多组方案,比如“满100打5折,满200打4折,满500打3 ...
- SQL语句添加删除修改字段及一些表与字段的基本操作
用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200)2.删除字段 ALTER TABLE table_NA ...
- 动态添加删除网卡 - 每天5分钟玩转 OpenStack(156)
这是 OpenStack 实施经验分享系列的第 6 篇. 在项目实施过程中,经常会有添加删除网卡的需求.比如一个运行数据库的 instance,初始只有一个网卡,数据库服务和备份共用这块网卡,后来为提 ...
- webservice Dome--一个webservice的简单小实例
1.理解:webservice就是为了实现不同服务器上不同应用程序的之间的通讯 2.让我们一步一步的来做一个webservice的简单应用 1)新建一个空的web应用程序,在程序上右键,新建项目,选择 ...
- WebService的简单介绍与入门使用
WebService是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式 ...
随机推荐
- 201521123038 《Java程序设计》 第三周学习总结
201521123038 <Java程序设计> 第三周学习总结 1. 本周学习总结 附大图链接 http://naotu.baidu.com/file/5774caa2be710afbc0 ...
- 201521123020《java程序设计》第1周学习总结
1.本周学习总结 1.对JAVA的历史发展的了解 2.了解Java与C/C++的区别,Java语言所写程序较为繁琐,C/C++较为简洁. 3.安装java和jdk 2.书面作业 Q1.为什么java程 ...
- Markdown格式
一个例子: 例子开始 1. 本章学习总结 今天主要学习了三个知识点 封装 继承 多态 2. 书面作业 Q1. java HelloWorld命令中,HelloWorld这个参数是什么含义? 今天学了一 ...
- Spring-Struts2-基本集成
步骤: 1,导入struts2的相关jar包(检查是否有冲突的包,即同一个包有不同的几个版本存在) 2,导入struts2和spring的整合包 struts2-spring-plugin-2.3.4 ...
- Linux tomcat 去除项目名端口号直接用ip或者域名访问网站
网站开发过程中,一般的工程访问路径是 http://10.10.10.10:8080/projectName如何设置成http://10.10.10.10/ 解决方法: 首先,进入tomcat的安装 ...
- 将eclipse左边目录结构改为 树形结构
认情况下Eclipse的显示内容如下: 这种视图我们看起来不太方便,于是我们需要改变一下它的显示结构,我们点击一下下图中蓝色圆圈圈住的图标 在弹出的框中把鼠标放到"package prese ...
- Sublime Text 3 全程详细图文原创教程
Sublime Text 3 全程详细图文原创教程(持续更新中...) 一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何 ...
- Fiddler抓包工具使用详解
一.Fiddler简介 Fiddler是最强大最好用的Web调试工具之一, 它能记录所有客户端和服务器的http和https请求.允许你监视.设置断点.甚至修改输入输出数据.Fiddler包含了一个强 ...
- 翻译 | Thingking in Redux(如果你只了解MVC)
作者:珂珂(沪江前端开发工程师) 本文原创,转载请注明作者及出处. 原文地址:https://hackernoon.com/thinking-in-redux-when-all-youve-known ...
- 最小覆盖_KEY
最小覆盖(cover)..线段树 [题目描述] 给定 N 个区间[Li,Ri],需要你按照顺序选出一个区间序列使得[1,M]完全被覆盖.并且在选出来的序列中,某个区间[a,b]之前必须保证[1,a]都 ...