xml的增删改查用法-创新互联
这篇文章主要讲解了“xml的增删改查用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“xml的增删改查用法”吧!
创新互联服务项目包括原阳网站建设、原阳网站制作、原阳网页制作以及原阳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,原阳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到原阳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!在项目开发中,我们经常会对某张表进行增删改查。我们根据条件刷选表中的数据放到gridview中以列表形式展现,同时给gridview添加各种样式,比如一般必用的鼠标经过,鼠标离开颜色变化,行选中等颜色加深,同时给列表数据项赋值,单击保存按钮可以修改一条已存在的数据或者添加一条新的数据,单击按钮添加,列表数据项清空,单击删除,可以删除一条数据。
由于为了方便大家把代码复制一下,在脱离数据的情况下,就可以看到效果,所以,我把数据存放在xml,所以读取数据不是通过数据库,是通过跟xml文件交互实现的。所以做了下面对xml增删改查页面。
效果图:
首先列出XML文件,方便代码参照
内容.xml
一,核心代码:
1) 修改xml
////// 修改XML /// /// XML文件名 /// 存放信息哈希表 /// 主键值 public void saveXML(string xmlName,Hashtable ht,string ID) { string fileName=HttpContext.Current.Request.PhysicalApplicationPath+"\\Xml\\"+xmlName+".xml";//xml的物理路径 XmlDocument xmlDoc=new XmlDocument (); xmlDoc.Load(fileName); XmlNode node = xmlDoc.SelectSingleNode("config/rows[@ID=" + ID + "]"); foreach (XmlNode node1 in node.Attributes) { if (ht.ContainsKey(node1.Name)&&node1.Name!="ID") { node1.Value = ht[node1.Name].ToString(); } } xmlDoc.Save(fileName); }
ht:
Hashtable ht = new Hashtable(); ht.Add("ID", this.txt_ID.Value); ht.Add("class", this.txt_class.Value); ht.Add("class_name", this.txt_class_name.Value); ht.Add("year", this.txt_year.Value); ht.Add("school", this.txt_school.Value); ht.Add("count", this.txt_count.Value);
2)插入xml
////// 插入xml /// /// XML文件名 /// 存放信息哈希表 ///public string insertXml(string xmlName, Hashtable ht) { string fileName = HttpContext.Current.Request.PhysicalApplicationPath + "\\Xml\\" + xmlName + ".xml";//xml的物理路径 XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(fileName); XmlNode node = xmlDoc.SelectSingleNode("//rows[last()]");//最后一个行节点 XmlNode MaxNode = xmlDoc.SelectSingleNode("//rows/@ID[not(./rows/@ID)]");//获取主键大值 if (int.Parse(ht[MaxNode.Name].ToString()) <= int.Parse(MaxNode.Value))//如果小于主键大值,那么返回- { return "-1"; } XmlElement xe = xmlDoc.CreateElement("rows"); xe.InnerText = ""; foreach (XmlNode node1 in node.Attributes) { if (ht.ContainsKey(node1.Name)) { xe.SetAttribute(node1.Name, ht[node1.Name].ToString()); } else { xe.SetAttribute(node1.Name,""); } } node.ParentNode.AppendChild(xe); xmlDoc.Save(fileName); return "1"; }
3) 删除xml
////// 删除xml节点 /// /// XML文件名 /// 主键值 /// 主键名 ///public string deleteXml(string xmlName,string ID,string primaryKey) { string rtn = string.Empty; string fileName = HttpContext.Current.Request.PhysicalApplicationPath + "\\Xml\\" + xmlName + ".xml";//xml的物理路径 XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(fileName); XmlNode node = xmlDoc.SelectSingleNode("//rows[@"+primaryKey+"='"+ID+"']");//最后一个行节点 if (node ==null) { rtn = "-1"; } else { node.ParentNode.RemoveChild(node); rtn = "1"; } xmlDoc.Save(fileName); return rtn; }
感谢各位的阅读,以上就是“xml的增删改查用法”的内容了,经过本文的学习后,相信大家对xml的增删改查用法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联成都网站设计公司,小编将为大家推送更多相关知识点的文章,欢迎关注!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章题目:xml的增删改查用法-创新互联
文章源于:http://ybzwz.com/article/ceesso.html