2016-04-05 43 views
2

我有一個從BLL(在我的控制之外)作爲DataSet返回的數據。我知道它只佔用相關表格的一行,所以我正在像這樣訪問它:_appData = myDataSet.Tables["TableName"].Rows[0]。然後通過調用該行的列名稱來訪問各個數據點:_appData["ColumnName"].ToString()列「名稱」不屬於表

這對我的大部分數據都能正常工作,但是我知道存在一列的「列不屬於表」錯誤。這裏的錯誤在調試模式下破:「hadDataCompromise」

break in debug

正如你所看到的列是問題被稱爲這裏的顯示出來,當我打破,並深入到DataSet中的列 - >表 - >柱:

enter image description here

和良好的措施,我想訪問在立即窗口中柱,使用完全相同的語法我

enter image description here

任何線索爲什麼這可能發生的事情:在我的實際代碼,這完美的作品,返回預期值使用?沒有一個類似的問題似乎適用於我的問題(其中大多數涉及錯字或無關引號或括號)。再次,大多數列的代碼工作正常,但隨機打破這一個。謝謝!

回答

6

有一個尾隨空間的傢伙。

enter image description here

private string Retrieve(string columnName) 
{ 
    return _appData[columnName.Trim()].ToString(); 
} 

.Trim()功能是好的,但你還是檢查你傳遞的名稱是來自來源。

+2

韋爾普,我不知道該笑還是哭。我會去添加修剪(),然後大吼我的數據人。 –