草庐IT

LINQ_ENABLED

全部标签

c# - LINQ to XML - 如何正确使用 XDocument

现在我要开始说这确实是一个任务。然而,在遇到LinqtoXML语法之前,我几乎完成了它。我有2个类:轨道和CD现在作为作业的一部分,我创建了一张CD,然后向其中添加了一些轨道。在搜索了很多完美解释了如何从xml到对象的教程之后,我似乎无法正常工作(对象到xml)。我目前有://MylistofcdsListcds=newList();//MakeanewCDandaddsometrackstoitCDc1=newCD("Awake","DreamTheater");Trackt1=newTrack("6:00","DreamTheater",newTimeSpan(00,05,31))

.net - LINQ 是否保证从 XDocument 读取的项目顺序?

所以我正在做的是使用xml文档来确定数据库更新需要运行某些SQL脚本的顺序。XML遵循这种格式“Filename”因此,在数据库中执行所有sql文件的类会在更改其连接时查看此文件,并根据配置文件告诉它执行的操作从文件夹中执行文件。现在我的问题是:假设我有一个包含4个Database节点的文档,每个节点都有n个Folder节点,里面有一个里面的各种文件节点。如果在ForEach中循环遍历我检索到XElement中的Database节点,我是否合乎逻辑?使用database.Elements("Database")它们将按照它们在xml文件中出现的顺序被提取?(文件节点也一样)据我所知,情

C# Linq to XML,当 child 满足条件时获取 parent

我需要一些帮助。我有这个xml文档:然后,我尝试选择“child”满足条件的所有“parent”。例如,所有包含子项的父项,子项属性upc等于101我正在研究这篇文章:Selectnodesbasedonpropertiesofdescendantnodes但我就是得不到我想要的。 最佳答案 XDocumentdoc=...;vartargetUpc=101;varquery=doc.Descendants("Parent").Where(p=>p.Elements("Child").Any(c=>(int)c.Attribute(

c# - Linq 存储过程返回 XML

我正在使用EntityFramework代码优先方法。我想从DbContext类调用存储过程并获取XML输出。存储过程(SQLServer):CREATEPROCEDURExml_testASBEGINDECLARE@xml1xmlSET@xml1=(SELECT*fromProductFORXMLRAW)SELECT@xml1ASmy_xmlENDLINQEntityFramework:using(DBContextdb=newDBContext()){varProductList=awaitdb.Database.ExecuteSqlCommandAsync("execxml_te

c# - 使用linq to xml遍历xml树中的每个元素

我想遍历xml中的每个元素和属性,并在事先不知道元素名称的情况下获取名称和值。我什至有一本关于linqtoxmlwithC#的书,它只告诉我如何在我已经知道元素名称的情况下查询以获取元素的值。下面的代码只给我最高级的元素信息。我还需要到达所有下降元素。XElementreportElements=null;reportElements=XElement.Load(filePathName.ToString());foreach(XElementxeinreportElements.Elements()){MessageBox.Show(xe.ToString());}

c# - 如何在 Linq-to-XML 中按路径查找 XML 节点

如果我将特定节点的路径作为字符串获取,我能否通过使用XElement(或XDocument)的Linq/Method以某种方式轻松找到所述节点。有许多不同类型的XML对象,作为额外的奖励,如果您能为我提供一份关于为什么/如何使用不同类型的指南,那就太好了。编辑:好的,在被指向XPathSelectElement之后,我正在尝试它,所以我可以给他正确的答案,但我不能完全让它工作。这是我正在尝试的XMLSomeNameSomeTypeAlot和我的代码stringpath="Product/Name";stringname=xml.XPathSelectElement(path).Valu

c# - LINQ:根据属性值从 XML 中删除元素?

如何根据匹配的属性值删除xml中的任何元素?这是我的XML:我正在使用以下LINQ查询:varremove=fromelemetinxdoc.Elements("Projects").Elements("Project")whereelemet.Attribute("projectName").Value=="project1"selectelemet.Parent.Remove();我在选择为时遇到编译时错误:ThetypeofexpressioninselectclauseisIncorrect编辑答案:这个对我有用。谢谢大家varxElement=(fromelemetinxdo

c# - 使用 LINQ to XML 生成 xml

假设我有一个如下所示的类,如何使用LINQtoXML创建如下所示的xml?publicclassOrder{publicstringOrderNo{get;set;}publicstringItemId{get;set;}publicstringItemDesc{get;set;}publicintQty{get;set;}}1W001C#T-Shirst22W002XMLT-Shirt1 最佳答案 虽然您可以使用XmlSerialization,但在很多情况下,使用LINQtoXML也同样简单,并且不会将您的类实现锁定到单个序列化

xml - 将 XML 注释添加到由 LINQ to SQL 设计器生成的类属性

我使用VisualStudio中的LINQtoSQL设计器来创建数据库的对象模型。现在,我想向每个生成的属性添加XML注释,但我无法弄清楚如何在下次刷新dbml文件时不删除属性的情况下执行此操作。如何做到这一点? 最佳答案 我认为不可能自动使xml注释与自动生成的代码保持同步。但是,xml注释可以留在单独的文件中(只需在“项目属性”->“构建”选项卡上设置“XML文档文件”选项)。您可以创建初始版本的XML文档文件并在必要时手动更新 关于xml-将XML注释添加到由LINQtoSQL设计

c# - Linq to Xml : selecting elements if an attribute value equals a node value in an IEnumerable<XElement>

我创建了一个IEnumerable对象,它只包含我想要从xml文件中获取的节点:IEnumerablerosters=XDocument.Load("roster.xml").Elements("rosterlist").Elements("roster").Where(w=>w.Element("division").Value.Equals("SUPERAWESOMEDIVISION"));所以它是这些的集合:12我只想抓取userid属性也是rosters集合中的userid节点的用户。IEnumerableusers=XDocument.Load("user.xml").Ele