[英]How to check if a xml file contains specific element using linq to xml
在我的XML文件中,我想檢查我的xml文件中是否有設備元素
我嘗試這個代碼,但如果沒有找到設備元素,請給我Null Reference Exception
public bool HaveAnyDevice()
{
XDocument doc = XDocument.Load(path);
return !doc.Element("Settings").Elements("Device").Any();
}
你的代碼應該有效。 我認為你的xml中沒有元素Settings
。 因此,在嘗試獲取元素之前,只需驗證它是否存在:
public bool HaveAnyDevice()
{
XDocument doc = XDocument.Load(path);
var settings = doc.Element("Settings");
return (settings != null) && settings.Elements("Device").Any();
}
如果您獲得NRE,那么您的doc.Element("Settings")
為空。 您可以在檢查下一個元素之前檢查它。
return doc.Element("Settings") != null &&
doc.Element("Settings").Elements("Device").Any();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.