C# 尝试按名称获取元素时返回NullReferenceException
我正在试验linq to xml的特性,同时尝试模拟方法C# 尝试按名称获取元素时返回NullReferenceException,c#,linq,linq-to-xml,linq-to-objects,C#,Linq,Linq To Xml,Linq To Objects,我正在试验linq to xml的特性,同时尝试模拟方法XElement.substands(“Users”),我有以下代码;我的问题是为什么第二行 var usersElement = xElement.Element("Users"); // this is returning null 返回是否为空?以下是main()中的完整代码 下面是Users.xml: <Users> <User name="Surender" type="Senior Developer
XElement.substands(“Users”)
,我有以下代码;我的问题是为什么第二行
var usersElement = xElement.Element("Users"); // this is returning null
返回是否为空?以下是main()中的完整代码
下面是Users.xml:
<Users>
<User name="Surender" type="Senior Developer" />
<User name="Parvind" type="AVP" />
<User name="Adam" type="Manager, Vice President" />
<User name="Dongming" type="Junior Developer" />
</Users>
当您使用
XElement.Load时,它返回根元素。您正在根下搜索您的根,当然这是行不通的
xElement
是Users
。您只需要xElement.Elements(“User”)
获取所有User
元素。替换:XElement-XElement=XElement.Load(“Users.xml”)代码>带有XDocument xdoc=XDocument.Load(@“C:\Users.xml”)代码>
<Users>
<User name="Surender" type="Senior Developer" />
<User name="Parvind" type="AVP" />
<User name="Adam" type="Manager, Vice President" />
<User name="Dongming" type="Junior Developer" />
</Users>