此查询似乎有效,但我有0结果.
IEnumerable<XElement> users =
(from el in XMLDoc.Elements("Users")
where (string)el.Attribute("GUID") == userGUID.ToString()
select el);
Run Code Online (Sandbox Code Playgroud)
我的XML如下:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Users>
<User GUID="68327fe2-d6f0-403b-a7b6-51860fbf0b2f">
<Key ID="F7000012ECEAD101">
...
</Key>
</User>
</Users>
Run Code Online (Sandbox Code Playgroud)
你有什么线索可以解释这个问题吗?
我在堆栈溢出时看了几个线程,我找不到答案.我有一个像下面这样的xml文件设置:
<entry id="1" type="a">
<name>string 1</name>
<description>any description</description>
</entry>
<entry id="2" type="b">
<name>string 2</name>
<description>any description #2</description>
</entry>
Run Code Online (Sandbox Code Playgroud)
我需要选择所有"条目"标签并返回条目的ID,类型,内部名称和描述标签.我怎么能用C#这样做?
谢谢,
我有一个像这样的XML文件,我想读取ID,短名称,名称节点值.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<AccountingUnitList xmlns="http://www.google.com">
<AccountingUnit>
<ID>17406</ID>
<ShortName>test</ShortName>
<Name>test</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18006</ID>
<ShortName>ANOTHERtest</ShortName>
<Name>Anothertest</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18046</ID>
<ShortName>RKU</ShortName>
<Name>hospital</Name>
</AccountingUnit>
<AccountingUnit>
<ID>18047</ID>
<ShortName>MNU</ShortName>
<Name>MNU</Name>
</AccountingUnit>
</AccountingUnitList>
Run Code Online (Sandbox Code Playgroud)
递归读取Node元素的最佳方法是什么?
这就是我尝试读取Node值的方法:
var accountingunit = (
from e in XDocument.Parse(textresult).Root.Elements("AccountingUnit")
select new node
{
idvalue = (string)e.Element("ID"),
shortname =(string)e.Element("ShortName"),
name = (string)e.Element("Name"),
});
foreach(var unit in accountingunit)
{
Console.WriteLine("ID"+ unit.idvalue + unit.name + unit.shortname);
}
Run Code Online (Sandbox Code Playgroud)
这是节点consructor:
public class node
{
public string idvalue { get; set; }
public string shortname { …Run Code Online (Sandbox Code Playgroud) 我对XML很新,并使用C#解析它.我试图解析一个如下所示的XML文档:
<Msg Version="1.0">
<ProgList>
<update sequence="41248" amount="3327" Lvl="1" Grp="1" />
<update sequence="41216" amount="5326" Lvl="2" Grp="1" />
<update sequence="41252" amount="7326" Lvl="3" Grp="1" />
</ProgList>
</Msg>
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用XDocument,似乎无法解析具有属性的三个更新.
但是,如果我在此表单中创建包含相同数据的XML文档:
<Msg Version="1.0">
<ProgList>
<Level>
<seq>41248</seq>
<amount>3327</amount>
<Lvl>1</Lvl>
<Grp>1</Grp>
</Level>
<Level>
<seq>41216</seq>
<amount>5326</amount>
<Lvl>2</Lvl>
<Grp>1</Grp>
</Level>
<Level>
<seq>41252</seq>
<amount>7326</amount>
<Lvl>3</Lvl>
<Grp>1</Grp>
</Level>
</ProgList>
</Msg>
Run Code Online (Sandbox Code Playgroud)
我可以使用以下代码解析并迭代Level数据:
String xmlText = String.Empty;
//String xml = String.Empty;
int begin = Data.IndexOf("<?xml");
int end = Data.IndexOf("</Msg") + 6;
try
{
//xml = Data.Substring(begin, end - begin);
}
catch { }; …Run Code Online (Sandbox Code Playgroud)