我有一個字符串,可以是空的,如果它不是空的,它包含一個XML文檔。問題是在DataType System.String的此數據集列中允許使用空值。DataSet列可以爲NULL,但不能轉換爲字符串?
錯誤消息:this.MetaData」扔類型的異常 'System.Data.StrongTypingException'
基{System.SystemException} = {「爲列中的值 '邁德特' 表 'GMyTAbleName' 是的DBNull 「}
UPDATE
這裏是事業的截圖:
http://666kb.com/i/bld3eelnaicsgb9tv.png
你會看到它如何嘗試將NULL轉換爲應該返回的字符串。
該代碼是從DataSet.Designer.cs文件,我怎麼可能改變這種行爲? :S
即使我會測試,有alreay數據集中這樣的測試,但是當其空和允許爲空,問題是該數據集不能零轉換爲空字符串,那是什麼該錯誤說。 – msfanboy 2010-07-30 06:16:00
@msfanboy:我明白你的意思。這個想法是,你保護自己不要訪問強類型列,直到你確定它不是null爲止,因爲如果你曾經在get null時訪問getter,你就會得到一個StrongTypingException。我知道這很乏味,避免DBNull是我採納LINQ的原因之一,因此速度很快。 – kbrimington 2010-07-30 06:27:29
THX爲你歡呼起來,我喜歡LINQ的太多,但不能老是在這裏使用它:/ 我更新了第一篇文章與該問題的屏幕截圖! – msfanboy 2010-07-30 08:39:33