使用c#计算XML标记中的"元素"数

Ant*_*ony 0 c# xml

我正在使用C#读取XML文件并计算XML标记中有多少"元素",例如......

<Languages>English, Deutsche, Francais</Languages>
Run Code Online (Sandbox Code Playgroud)

Languages标签内有3个"元素":英语,德语和法语.我需要知道如何计算它们并返回有多少元素的值.标签的内容有可能随着时间的推移而变化,因为XML文件必须扩展/容纳其他语言(只要需要).

如果无法做到这一点,请建议解决问题的方法.谢谢.

编辑:我没有提出读取XML文件的代码,但我也有兴趣学习如何.

编辑2:对问题进行了修订

Sco*_*ott 5

string xml = @"<Languages>English, Deutsche, Francais</Languages>";
var doc = XDocument.Parse(xml);

string languages = doc.Elements("Languages").FirstOrDefault().Value;
int count = languages.Split(',').Count();
Run Code Online (Sandbox Code Playgroud)

为了响应您的编辑,这些编辑表明您不是简单地尝试从XML元素中提取逗号分隔的字符串,那么您首先存储XML的方法是不正确的.正如另一张海报评论的那样,它应该是:

<Languages>
    <Language>English</Language>
    <Language>Deutsche</Language>
    <Language>Francais</Language>
</Languages>
Run Code Online (Sandbox Code Playgroud)

然后,获取语言计数:

string xml = @"<Languages>
                   <Language>English</Language>
                   <Language>Deutsche</Language> 
                   <Language>Francais</Language>
               </Languages>";

var doc = XDocument.Parse(xml);

int count = doc.Element("Languages").Elements().Count();
Run Code Online (Sandbox Code Playgroud)