我想從XML文件使用XMLNode讀取多個屬性,但取決於元素,該屬性可能不存在。在屬性不存在的情況下,如果我嘗試將其讀入內存,它將拋出一個空異常。我發現,測試,如果屬性返回null一種方式:如何檢查多個XMLNode屬性的空值?
var temp = xn.Attributes["name"].Value;
if (temp == null)
{ txtbxName.Text = ""; }
else
{ txtbxName.Text = temp; }
這似乎是它會爲單個實例的工作,但如果我檢查20屬性,這些屬性可能不存在,我希望有一種方法要設置一個方法,我可以傳遞值來測試它是否爲空。從我讀過的你不能傳遞一個var,因爲它是在本地初始化的,但是有沒有辦法讓我設置一個測試來傳遞一個可能的空值來測試,然後返回值,如果它不是null,並返回「」如果它是空的?是否有可能,或者是否必須按照上面所述單獨測試每個值?如果您使用的XDocument
你可以只使用LINQ找到你想要的所有節點
txtbxName.Text = GetText(xn, "name");
爲什麼使用'XmlDocument'? Linq2XML是更好的選擇。 –
我剛開始使用xml解析,並且比使用LINQtoSQL更容易使用XMLDocument。 –