2010-03-08 57 views
3

我曾嘗試:獲取DataTable中的字段值時,列名中有空格

ObjDTOleDBNFeIntegra.Rows(I)("[Cnpj Cpf]").ToString() //with brackets 
ObjDTOleDBNFeIntegra.Rows(I)("'Cnpj Cpf'").ToString() //with apostrophe 
ObjDTOleDBNFeIntegra.Rows(I)("Cnpj Cpf").ToString() //without anything 

我用VB.NET,但在這裏撇號意見似乎並不被識別。

我也得到了每種情況的例外:
列「[CNPj的CPF]」不屬於表表。(失敗) 列'Cnpj Cpf'不屬於表格表格。(失敗) 列''Cnpj Cpf''不屬於表格表格。(失敗)

當列名包含空格時,我應該如何處理數據表中的字段值?

回答

10

你檢查什麼認爲它叫什麼名字?例如,它可能具有下劃線。環比列,並找出(對不起,C#示例):

foreach(DataColumn col in table.Columns) { 
    Debug.WriteLine(col.ColumnName); 
} 

其實,這是更快地使用列,如果你是在一個循環中這樣做,所以我可能會使用類似:

DataColumn col = table.Columns["whatever"]; 
foreach(DataRow row in table.Rows) { 
    Console.WriteLine(row[col]); 
}