列名にスペースがある場合DataTableのフィールドから値を取得します
-
18-09-2019 - |
質問
私が試してみました。
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 'が' テーブル表に属していません。(失敗)
私は、列名にスペースが含まれているDataTableのフィールドから値をGERするために何をすべきでしょうか?
解決
は、の列のは、それが呼ばれる考えるものにチェックしましたか?これは、例えば、アンダースコアを持っているかもしれません。列をループし、見つける(申し訳ありませんが、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]);
}
所属していません StackOverflow