Frage

Ich habe versucht:

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

Ich verwende VB.NET, aber Kommentare mit Apostroph in hier scheinen nicht identifiziert werden.

Und ich bekomme die Ausnahmen für jeden Fall:
Spalte '[CNPJ Cpf]' gehört nicht zu Tabelle Tabelle. (gescheitert) Spalte 'CNPJ Cpf' gehört nicht zu Tabelle Tabelle. (gescheitert) Spalte '' CNPJ Cpf '' gehört nicht zu Tabelle Tabelle. (gescheitert)

Was kann ich tun, um einen Wert aus einem Feld in einem Datatable ger, wenn der Spaltenname Leerzeichen enthält?

War es hilfreich?

Lösung

Haben Sie überprüft, was die Spalte denkt, dass es genannt wird? Es könnte Unterstrichen haben, zum Beispiel. Schleife über die Spalten und finden Sie heraus (sorry, Beispiele in C #):

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

Eigentlich ist es schneller, die Spalte zu verwenden, wenn Sie es in einer Schleife tun, so könnte ich so etwas wie verwenden:

DataColumn col = table.Columns["whatever"];
foreach(DataRow row in table.Rows) {
    Console.WriteLine(row[col]);
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top