C# 如何在wpf中获取xml第n个元素名

C# 如何在wpf中获取xml第n个元素名,c#,wpf,C#,Wpf,在上面的代码中,我可以得到除根元素(Student)之外的元素的计数。现在计数是3 但我必须得到2ed元素名(Kavi)、属性元素名(ID)和子元素名(FName,MName) 我该怎么做才能得到这些东西 请帮助我…使用XDocument(): 或者(对于您的代码): 添加了: var secondNode = student.ChildNodes[1] as XmlElement; var studentName = secondNode.LocalName; var studentId =

在上面的代码中,我可以得到除根元素(Student)之外的元素的计数。现在计数是3

但我必须得到2ed元素名(Kavi)、属性元素名(ID)和子元素名(FName,MName)

我该怎么做才能得到这些东西

请帮助我…

使用XDocument():

或者(对于您的代码):

添加了

var secondNode = student.ChildNodes[1] as XmlElement;
var studentName = secondNode.LocalName;
var studentId = secondNode.Attributes["ID"];

var secondNode=student.ChildNodes[1];
变量fName=
secondNode.ChildNodes.Cast().FirstOrDefault(x=>x.LocalName==“FName”).InnerText;
变量mName=
secondNode.ChildNodes.Cast().FirstOrDefault(x=>x.LocalName==“MName”).InnerText;
var studentId=secondNode.Attributes[“ID”].Value;
使用XDocument():

或者(对于您的代码):

添加了

var secondNode = student.ChildNodes[1] as XmlElement;
var studentName = secondNode.LocalName;
var studentId = secondNode.Attributes["ID"];

var secondNode=student.ChildNodes[1];
变量fName=
secondNode.ChildNodes.Cast().FirstOrDefault(x=>x.LocalName==“FName”).InnerText;
变量mName=
secondNode.ChildNodes.Cast().FirstOrDefault(x=>x.LocalName==“MName”).InnerText;
var studentId=secondNode.Attributes[“ID”].Value;

var secondNode=student.ChildNodes[1]作为XmlElement;用这段代码我可以得到第二个节点kavi。非常感谢你。。。但我想得到属性元素,比如“ID”和子节点FName和MName。但是我不能用上面的代码…为FNAme,MName和ID值添加了代码:)但是在我看来,XPath和Linq2XML-一个更方便的解决方案…但是它通过异常“System.Xml.XmlNodeList”不包含“Cast”的定义,并且没有扩展方法“Cast”接受类型为“Check your using section for System.LinqAbove”的第一个参数。所有代码对我都非常有用。但是我想你没有理解我的问题。我需要仅将标记名(,)和属性名(ID)作为字符串值。我不希望它的InnerText…var secondNode=student.ChildNodes[1]作为XmlElement;用这段代码我可以得到第二个节点kavi。非常感谢你。。。但我想得到属性元素,比如“ID”和子节点FName和MName。但是我不能用上面的代码…为FNAme,MName和ID值添加了代码:)但是在我看来,XPath和Linq2XML-一个更方便的解决方案…但是它通过异常“System.Xml.XmlNodeList”不包含“Cast”的定义,并且没有扩展方法“Cast”接受类型为“Check your using section for System.LinqAbove”的第一个参数。所有代码对我都非常有用。但是我想你没有理解我的问题。我需要仅将标记名(,)和属性名(ID)作为字符串值。我不希望它是InnerText。。。
var secondNode = student.ChildNodes[1] as XmlElement;
var studentName = secondNode.LocalName;
var studentId = secondNode.Attributes["ID"];
var secondNode = student.ChildNodes[1];
var fName =
    secondNode.ChildNodes.Cast<XmlElement>().FirstOrDefault(x => x.LocalName == "FName").InnerText;
var mName =
    secondNode.ChildNodes.Cast<XmlElement>().FirstOrDefault(x => x.LocalName == "MName").InnerText;
var studentId = secondNode.Attributes["ID"].Value;