草庐IT

linq-group

全部标签

c# - 在 C# 中查询 XML 的最佳方式——使用 LINQ 等

我有一条需要解析的xml消息(无法控制格式),它看起来类似于我需要处理的下图(名称/值对)。在Name=x处查询值并获取相关值的最佳方法是什么?我目前正在使用嵌套选择来尝试从特定的名称/值对中获取值。只是想知道我是否可以使用更简单的LINQ/Lambda调用。如有任何建议,我们将不胜感激。System_ID12345System_NameTestSystem 最佳答案 使用LinqtoXML:varxml=XElement.Load(someXmlFile);varresults=xml.Descendants("MessageDe

c# - 使用 LINQ 时的默认 xml 属性值

假设您有一个XML文件:并且您有xsd文件:......假设属性“hello”是“something”元素的可选属性,默认值设置为“false”。当使用XMLLINQ的XDocument时,缺少该属性,导致程序在尝试读取它时失败:XDocumentxml=XDocument.Load("file.xml");boolb=bool.Parse(xml.Descendants("something").First().Attribute("hello").Value);//FAILLINQ是自动加载XML架构(从根元素“experiment”的“xsi:noNamespaceSchemaL

c# - Linq 强制转换 Xelement 错误 : Unable to cast object of type 'System.Xml.Linq.XElement' to type 'System.IConvertible'

我正在尝试按如下方式解析XML文档:varlocs=fromnodeindoc.Descendants("locations")selectnew{ID=(double)Convert.ToDouble(node.Attribute("id")),File=(string)node.Element("file"),Location=(string)node.Element("location"),Postcode=(string)node.Element("postCode"),Lat=(double)Convert.ToDouble(node.Element("lat")),Lng=

c# - LINQ for string StartsWith List<string> 中的某个值

我正在使用LINQ解析XDocument。我想检查XElements之一,键为“BusinessStructure”以我的Listfilters中的字符串之一开始.换句话说,假设我有:x.Element("BusinessStructure").Value="testing123"和varfilters=newList{"test","hello"}使用LINQ,我该如何做......wherex.Element("BusinessStructure").Value.StartsWith(filters[0])selectnew...但是我不想获取过滤器列表的第一个索引,而是想“循环”

c# - LINQ to XML 无法获取元素

我正在尝试使用LINQtoXML解析从Web服务返回的微小xml。XML看起来像这样:true在网上环顾四周,我发现应该读取具有指定名称的第一个值:varreturnValue=XDocument.Parse(xml).Descendants().FirstOrDefault(n=>n.Name=="return");但它总是显示为空。我还尝试在名称中使用命名空间(当我将鼠标悬停在名称上时(上方:“return”)它告诉我可以使用{namespace}name来提供命名空间)所以它是“{ns}return”。然而,那也没有返回任何东西。如何从上述xml中检索返回值?编辑:我也尝试了这里

C# LINQ with XML,无法将同名的多个字段提取到对象中

尝试使用LINQXML将以下XML文件(可以更改)读入对象到VAR。AdjustmentReportpdfadobe_pdfExcelTrueadjustmentreport(?<ssn>\d{3}-\d{2}-\d{4})"(?<last>\s{0,1}[A-Z-'.]+\s{0,1}[A-Z-'.]+),(?<first>\s[A-Z-'.]+\s{0,1})(?<middle>[A-Z][.]|\s{0,1})">"(?<ssn>\d{3}-\d{2}-\d{4})""(?<total>\$[,/d]+)(?

asp.net - 从 VB.NET 中的 LINQ 查询返回匿名类型

我使用转发器控件使用RSS提要在我的网站上显示。我想知道在VB中是否可以从我的linq查询返回匿名类型而不是强类型RSSItems的集合。我知道这在C#中是可能的,但是一直无法计算出VB等效项。PublicClassRSSItemPublicPropertyTitleAsStringPublicPropertyLinkAsStringPublicPropertyContentAsStringPublicPropertyDescriptionAsStringPublicPropertypubDateAsStringPublicPropertycategoryAsStringEndClas

c# - 使用 LINQ 对 XML 进行排序

我想用LINQ对XML文件进行排序。XML如下,只是一个示例。通常它更大更复杂。XML应按标题升序排序。不是一次整个XML,而是每个parentNode本身。叶子总是在底部。文件夹或非叶子在顶部。以下XML的结构已经很好,但标题顺序错误。排序算法还应该替换错误定位的非叶节点。我已经有一些代码可以完成这项工作,但我想知道是否有更优雅或更短的方法。目前我必须递归调用一个函数来进行遍历。也许这可以用另一种方式来完成。谢谢。雷内这是我的XML:这是我的代码:using(XmlReaderreader=XmlReader.Create(XmlStream)){XDocumentxDoc=XDoc

c# - 如何使用 Linq 从 XML 中获取强类型集合

这是我的XML文件的一个片段(我意识到它的格式不理想,但遗憾的是我无法更改它):SummerPREV2013SummerPREV2013SummerPREV2013下面的函数可以工作,但它只抓取第一个菜单元素,而不抓取其余的publicstaticListGetLocations(stringuri){XDocumentxmlDoc=XDocument.Load(uri);varmenus=frommenuinxmlDoc.Elements("PRODMENUS")selectnewMenu{Id=Convert.ToInt32(menu.Element("MENU").Attribu

c# - LINQ to XML 克隆

谁能解释一下原地址XElementstreetnode为什么变了?看起来customer1持有对地址XElement的引用,但customer2和customer3已复制。为什么原来的地址变了?(LINQPad示例)varaddress=newXElement("address",newXElement("street","LawleySt"),newXElement("town","NorthBeach"));varcustomer1=newXElement("customer1",address);varcustomer2=newXElement("customer2",addre