2011-08-18 52 views

回答

7

編輯:好的,現在我們知道這是XmlReader.Value,其中確實返回一個字符串,這絕對不是問題。我會留下以前的答案以備將來參考。

我的猜測是,有一些「奇怪」的Unicode字符它不會在調試器中顯示...或者手錶窗口舉止異常。將手錶放在xml.Value.ToCharArray()將有助於表明這一點。

(順便說一句,給人一種Dictionary<,>參數名稱list非常混亂...)

編輯:另外,使用支撐和壓痕會使你的代碼更容易理解......


我們不能在目前可以肯定的說,但我猜Value屬性的類型是object,不string的。這意味着,==!=執行參考比較(運營商正在重載,不重寫,記住)。你想的多態行爲:

if (xml.Value.Equals("\n")) 

,或者如果xml.Value可以合法地爲null:

if ("\n".Equals(xml.Value)) 
+0

順便說一句,給字典<,>參數的名稱列表是非常混亂......),>>>>>>>>>>>爲什麼它很混亂? – Secret

+0

@ Oleg:因爲它不是一個列表,它是一本字典!我看「清單」我希望'的IList 的實現'... –

+0

Dictonary類只是一個有很多的名單 - 不是嗎? – Secret