Linq to XML 问题!!!

问题描述

写不到xml的<newsid>节点中!!!前台如下:姓名:<asp:TextBoxID="txtName"runat="server"></asp:TextBox>&nbsp;&nbsp;年龄:<asp:TextBoxID="txtAge"runat="server"></asp:TextBox>&nbsp;&nbsp;薪水:<asp:TextBoxID="txtSalary"runat="server"></asp:TextBox><asp:ButtonID="btnAdd"runat="server"Text="添加"OnClick="btnAdd_Click"/>XML如下:<?xmlversion="1.0"encoding="utf-8"?><data><newsid><projectmytitle="3124314"mypic="312312"links="31233"/><projectmytitle="vgv"mypic="vbv"links="vbnv"/><projectmytitle="vgv"mypic="vbv"links="vbnv"/><projectmytitle="vgv"mypic="vbv"links="vbnv"/></newsid><projectmytitle="vgv"mypic="vbv"links="vbnv"/></data>CS如下:usingSystem.Xml.Linq;publicpartialclassSample:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){//判断页面是否首次加载if(!Page.IsPostBack){BindPerson();//执行BindPrerson()方法}}privatevoidBindPerson(){//加载指定的xml文件XDocumentxml=XDocument.Load(Server.MapPath("data.xml"));//使用查询语法获取project集合varpersons=frompinxml.Root.Elements("project")selectnew{name=p.Attribute("mytitle").Value,age=p.Attribute("mypic").Value,salary=p.Attribute("links").Value};//绑定数据源gvPerson.DataSource=persons;gvPerson.DataBind();}protectedvoidbtnAdd_Click(objectsender,EventArgse){//加载指定的xml文件XDocumentxml=XDocument.Load(Server.MapPath("data.xml"));//创建需要新增的XElement对象XElementproject=newSystem.Xml.Linq.XElement("project",newXAttribute("mytitle",txtName.Text),newXAttribute("mypic",txtAge.Text),newXAttribute("links",txtSalary.Text));//添加需要新增的XElement对象xml.Root.Add(project);//保存xmlxml.Save(Server.MapPath("data.xml"));gvPerson.EditIndex=-1;BindPerson();}protectedvoidgvPerson_SelectedIndexChanged(objectsender,EventArgse){//加载指定的xml文件XDocumentxml=XDocument.Load(Server.MapPath("data.xml"));//使用查询语法获取指定的project集合varpersons=frompinxml.Root.Elements("project")wherep.Attribute("mytitle").Value==gvPerson.SelectedValue.ToString()selectnew{name=p.Attribute("mytitle").Value,age=p.Attribute("mypic").Value,salary=p.Attribute("links").Value};//绑定数据源dvPerson.DataSource=persons;dvPerson.DataBind();}

解决方案

解决方案二:
你想将project节点写到newsid节点中?//添加需要新增的XElement对象xml.Root.Add(project);===========xml.Descents("newsid").FirstOrDefalut().Add(project);
解决方案三:
xml.Descents("newsid").FirstOrDefalut().Add(project);提示:System.XML.Linq.XDocument不包含“Descents“的定义
解决方案四:
Descendants
解决方案五:
xml.Root是哪个节点啊,找准节点添加、更新。
解决方案六:
╮(╯▽╰)╭应该在newsid下增加子节点悲剧
解决方案七:
以前弄过,现在忘了,只能帮顶了

时间: 2024-09-22 02:09:37

Linq to XML 问题!!!的相关文章

使用LINQ to XML来读取XML文档

用于XML的语言级集成查询(LINQ to XML)允许使用标准查询操作符就像树形操作符一样来查询XML数据,它能够提供类似XPath的导航在后代.祖先和兄弟的XML元素中导航.它简化了对XML数据的使用,不必使用额外的语言语法像XPath或XQuery.你可以使用LINQ to XML对你从文件系统.从一个远程web service或从一个内存中的XML内容中获得的XML执行LINQ查询.这篇文章将只关注于使用LINQ从一个XML文件--Customers.xml文件查询XML. 创建一个简单

Linq To XML学习

这几天抽空看了看C# 3.0的一些新特性,匿名对象.Lambda表达式.Linq等 ,给我很大的冲击.简洁化.人性化.更加可读易理解的代码,让C# 3.0增色不 少.以前我总认为C#语言就是follow Java语言,现在看来微软就是强大,在流 行的基础上创出了自己的个性,漂亮简洁高效的编程语言让人不得不倾心. 因为以前的项目用到Xml操作比较多,我着重看了看Linq To Xml,用 msdn上的话来说,Linq To Xml是LINQ项目的一个组件,它是一种现代化的.在 内存中的XML编程A

Linq To Xml学习 - 3.查询、更新、删除

Linq To Xml学习 - 3.查询.更新.删除 文章最后有该示例的XML文档. 查找具有特定属性的元素 XElement root = XElement.Load ("PurchaseOrder.xml"); IEnumerable address = from el in root.Elements("Address") where (string)el.Attribute("Type") == "Billing" s

Linq To Xml学习 - 2.LINQ to XML编程概述

LINQ to XML 类概述 XAttribute 类 XAttribute 表示一个 XML 属性. XCData 类 XCData 表示一个 CDATA 文本节点. XComment 类 XComment 表示一个 XML 注释. XContainer 类 XContainer 是适用于可能具有子节点的所有节点的抽 象基类.下面的类派生自 XContainer 类: XElement XDocument XDeclaration 类 XDeclaration 表示一个 XML 声明.XML

Linq To Xml学习 - 1.LINQ to XML 概述

LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML. 它将 XML 文档置于内存中,这一点很像文档对象模型 (DOM). 您可以查询 和修改 XML 文档,修改之后,可以将其另存为文件,也可以将其序列化然后通 过网络发送. 但是,LINQ to XML 与 DOM 不同: 它提供一种新的对象模型, 这是一种更轻量的模型,使用也更方便,这种模型利用了 Visual C# 2008 在语 言方面的改进. LI

使用linq to xml快速创建自己的Rss

首先引用网络上不知道是谁的一段文字来讲述下什么是linq to xml 如果已 经熟悉的就直接跳过这段: LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML. 它将 XML 文档置于内存中,这一点很像文档对象模型 (DOM). 您可以 查询和修改 XML 文档,修改之后,可以将其另存为文件,也可以将其序列化然 后通过网络发送. 但是,LINQ to XML 与 DOM 不同: 它提供一种新的对象模 型,这

LINQ TO XML之判断不存在行则插入

近日写一个小工具,用到XML作为数据存储.其中要对两个XML文件进行匹配 比较.我现在使用的是LINQ TO XML语法,大致的例子如下 if (File.Exists(cacheFile)) { XDocument cachedoc = XDocument.Load(cacheFile); var query = from p in cachedoc.Descendants ("file") where p.Attribute ("blogId").Value =

Linq之Linq to XML

目录 写在前面 系列文章  linq to xml  总结 写在前面 在很多情况下,都可以见到使用xml的影子.例如,在 Web 上,在配置文件.Microsoft Office Word 文件(将word文档另存为xml文件,这也提供了一种通过操作xml,操作word的一种方式)以及数据库中,都可以看到 XML.而linq to xml提供了一种操作xml更便捷的方式. 系列文章 Linq之Lambda表达式初步认识 Linq之Lambda进阶 Linq之隐式类型.自动属性.初始化器.匿名类

linq to xml复习

虽然linq to xml随着.net framework3.0一起发布N久了,但因为自己以前参考网上的代码封装了一个xml操作类(当时linq to xml还没出来,这个封闭工具类一直也用得很顺手),所以在项目中也几乎极少用linq to xml,最近业余时间学习silverlight,原来针对winform/webform开发写的一些工具库部分要作修改才能用于silverlight,懒得一一移植了,干脆直接用.net内置的得了,何况自己再写一个,也还是这些玩意儿,有现成的不用白不用,整理了一

c# linq to xml-关于c# winform中XML得问题,可能涉及linq to xml

问题描述 关于c# winform中XML得问题,可能涉及linq to xml 对于图片上面的图元,我需要把它存成XML,需要图元的位置,大小,类型,修改图元以后,旧的信息会删除,存入新的信息.请各位帮帮忙,谢谢. 解决方案 不明白,这个难度有点大啊,你的这三个图片是在一张图上啊.