0
<library>
<book>
<id>1</id>
<name>abc</name>
<read>
<data>yes</data>
<num>20</num>
</read>
</book>
<book>
<id>20</id>
<name>xyz</name>
<read>
<data>yes</data>
</read>
</book>
<book>
<id>30</id>
<name>ddd</name>
</book>
</library>
從此我讀與元素<id>
值<book>
節點= 20存在使用下面的代碼如何檢查的元素在XML
XElement root = XElement.Load("e_test.xml")
XElement book = root.Elements("book")
.Where(x => (int) x.Element("id") == 20)
.SingleOrDefault();
if (book == null)
{
// No book with that ID
}
if(book.Element("read").Element("num") != null) //check the node exist
{
int num = (int) book.Element("read").Element("num");
}
在這裏,如果條件不能正常工作。它正在傳遞條件並進入並給出null異常。這是檢查相同的正確方法嗎?
我使用.NET Framework 4.0
你已經說過你使用的是哪個版本的.NET,但不是你正在使用的C#版本。他們不是一回事。 –
我只是用這個xml試過你的代碼,並沒有得到一個空引用異常。似乎有一些缺失。 – juharr