鑑於這種結構:如何在使用LINQ to XML時檢查XML是否包含元素?
<root>
<user>
<userName>user1</userName>
<userImageLocation>/user1.png</userImageLocation>
</user>
<user>
<userName>user2</userName>
</user>
</root>
public class User
{
public string UserName {get; set; }
public string UserImageLocation {get; set; }
}
我使用的LINQ to XML從XML文件中獲取數據,如:
XDocument document = XDocument.Parse(xmlFile);
List<User> listOfUsers =
(from user in document.Descendants("user")
select new User {
UserName = user.Element("userName"),
UserImageLocation = user.Element("userImageLocation"),
}
).ToList<User>();
我的問題是,並非所有的用戶元素包含userImageLocation,和當試圖讀取userImageLocation時,它會拋出一個異常。
如何檢查XML元素是否存在,如果存在,請閱讀它?