2010-10-10 68 views
0

我有這些列的表: 的errorCode(INT) errorDesc(VARCHAR)LINQ到數據集 - 獲取特定數據行

我試圖讓數據行,其中錯誤碼爲5:

DataRow resultCodeRow = (from resultCodesTableRow in resultCodesDT.AsEnumerable() 
           where resultCodesTableRow.Field<int>("result_Code_colum_Name") == 5 
           select resultCodesTableRow).Single(); 

爲什麼我得到錯誤:

「指定的轉換無效」。

你會怎樣寫它?

+1

如果你只取字段,不試圖將它轉換爲int會發生什麼?我懷疑這個價值不是*實際上是一個整數,因此這個問題。 – 2010-10-10 12:51:04

+1

那就對了。我想這是一個varchar – Pavan 2010-10-10 12:52:05

+0

你是對的 - ORACLE中的NUMBER是C#中的十進制數,不是int,謝謝你們! – Rodniko 2010-10-10 13:13:32

回答

0

您需要更改爲十進制

PK

+0

該OP說errorCode是一個int,而不是一個varchar ... – 2010-10-10 15:45:18

+0

啊那麼它的小數點然後在那種情況下。我做了正確的改變 – Pavan 2010-10-10 16:35:53