XML到字符串列表

Lia*_*rdy 4 c# xml

我有一些代码需要放入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)

Jon*_*dle 6

您将不得不使用Descendants而不是Elements:

List<string> list = doc.Root.Descendants("account").Descendants()
                   .Select(element => element.Value)
                   .ToList();
Run Code Online (Sandbox Code Playgroud)

Elements只返回元素的子元素(如果是根元素,则意味着<main>).
Descendants返回元素内的整个树.

另外:你必须修复标签<motto>Hello Everyone><motto>Hello Everyone</motto>