我有这个XML文件
<root>
<level1 name="A">
<level2 name="A1" />
<level2 name="A2" />
</level1>
<level1 name="B">
<level2 name="B1" />
<level2 name="B2" />
</level1>
<level1 name="C" />
</root>
Run Code Online (Sandbox Code Playgroud)
有人可以使用LINQ给我一个C#代码,这是打印此结果的最简单方法:(
如果它是一个level2节点,请注意额外的空间)
A
A1
A2
B
B1
B2
C
Run Code Online (Sandbox Code Playgroud)
目前我得到了这段代码
XDocument xdoc = XDocument.Load("data.xml"));
var lv1s = from lv1 in xdoc.Descendants("level1")
select lv1.Attribute("name").Value;
foreach (var lv1 in lv1s)
{
result.AppendLine(lv1);
var lv2s = from lv2 in xdoc...???
}
Run Code Online (Sandbox Code Playgroud) 我有一个xml文件,如:
<root>
<RowDetails RowName="A" ColumnSize="1">
<ColumnDetails ColumnName="A1" />
</RowDetails>
<RowDetails RowName="B" ColumnSize="2">
<ColumnDetails ColumnName="B1" />
<ColumnDetails ColumnName="B2" />
</RowDetails>
<RowDetails RowName="C" ColumnSize="3">
<ColumnDetails ColumnName="C1" />
<ColumnDetails ColumnName="C2" />
<ColumnDetails ColumnName="C3" />
</RowDetails>
</root>
Run Code Online (Sandbox Code Playgroud)
和一个像这样的词典:
Dictionary<String, List<String>>MyDict = new Dictioanary<String, List<String>>();
Run Code Online (Sandbox Code Playgroud)
我正在读取XML文件,MyDict如:
XDocument XDoc = XDocument.Load(Application.StartupPath + @"\foo.xml");
MyDict = XDoc.Descendants("RowDetails").ToDictionary(X => X.Attribute("RowName").Value,
X => X.Descendants("ColumnDetails")
.Select(Y => Y.Attribute("ColumnName").Value).ToList());
Run Code Online (Sandbox Code Playgroud)
现在字典将包含:
"A" { "A1" }
"B" { "B1", "B2" }
"C" { "C1", "C2", "C3" }
Run Code Online (Sandbox Code Playgroud)
但我的问题是我需要所有列表具有相同的计数.应为空条目添加空字符串,因此预期结果为:
"A" { "A1", …Run Code Online (Sandbox Code Playgroud) 我有一些代码需要放入C#中的字符串列表中,我正在从XML文件中读取此代码,其布局如下所示......
<?xml version="1.0"?>
<accountlist>
<main>
<account id="1" special_id="4923959">
<username>Adam</username>
<motto>Hello Everyone>
<money>1004</money>
<friends>394</friends>
<rareid>9</rareid>
<mission>10</mission>
</account>
</main>
</accountlist>
Run Code Online (Sandbox Code Playgroud)
如何将每个帐户标记放入字符串列表?从第一个<account>到</ account>标记?
请不要告诉我转到下面的链接,因为它不起作用! 如何读取XML文件并写入List <>?
到目前为止,我已经尝试了下面的代码,字符串列表保持为空
XDocument doc = XDocument.Parse(this._accountsFile);
List<string> list = doc.Root.Elements("account")
.Select(element => element.Value)
.ToList();
this._accounts = list;
Run Code Online (Sandbox Code Playgroud)