У меня есть list
Чтение CSV-файла с фильтром типа данных несоответствием
public List<string> strImportRequiredFields = new List<string> { "ENTRY/CMD #", "PART #", "REFERENCE 1", "REFERENCE 2", "REFERENCE 3", "DUTY PER" };
Теперь это мой код
string strFilter = string.Join(" = ' ' OR ", new UploadFields().strImportRequiredFields.Select(x => "[" + x.ToString() + "]").ToArray());
strFilter += " = ' '";
без фильтра его ход и дает все строки
фильтра значение является
"[ВХОД/CMD #] = '' ИЛИ [ЧАСТЬ #] = '' ИЛИ [ССЫЛКА 1] = '' ИЛИ [ССЫЛКА 2] = '' ИЛИ [ССЫЛКА 3] = '' ИЛИ [СБОР ЗА] = ' «»
string xlConn = "";
string strPath = System.Configuration.ConfigurationManager.AppSettings["UploadPath"];
xlConn = new UploadFields().returnConnectionForCSV(strPath);
OleDbConnection oledb_conn = null;
oledb_conn = new OleDbConnection(xlConn);
OleDbDataAdapter oledb_ad = new OleDbDataAdapter("SELECT * FROM [" + Path.GetFileName(filename) + "]" + " Where " + strFilter , oledb_conn);
DataTable dtImport = new DataTable();
oledb_ad.Fill(dtImport);
Это Выдает Error
Несоответствие типов данных в выражении критериев.
образец CSV Flie является
ENTRY/CMD #,ENTRY TYPE,PORT,ENTRY DATE,COUNTRY OF ORIGIN,IMPORT DATE,EXPORTING COUNTRY,IMPORTER #,IMPORTER OF RECORD,TOTAL MPF,HMF,TOTAL ENTERED VALUE,BOX 37,Box 40,CD #,REC'D DATE,USED DATE,REFERENCE 1,REFERENCE 2,REFERENCE 3,REFERENCE 4,REFERENCE 5,REFERENCE 6,REFERENCE 7,REFERENCE 8,DIRECT ID,DUTIABLE,NONDUTIABLE,PART #,ALTERNATE PART #,DESCRIPTION,IMPORT QTY,AVAIL QTY,OTHER QTY,UEV 1,SPECIFIC RATE,HTSUS,LINE #,UEV 2,AD VALOREM RATE,UEV 3,OTHER RATE,UNIT OF MEASURE,BOX 37 CHECK,DUTY PER,DUTY CALCULATION CODE,YIELD,CLAIMED STATUS,Liquidation Date,RECONCILIATION ENTRY #,RECONCILIATION ENTRY DATE,PROTEST #,PROTEST DATE,POST ENTRY ADJUSTMENT DATE,DUTY STATEMENT #,DUTY STATEMENT PAID DATE,WAREHOUSE WITHDRAWAL ENTRY #,WAREHOUSE WITHDRAWAL DATE,ORIGINAL INVOICE CURRENCY VALUE,CURRENCY CODE,Currency CONVERSION RATE,Share Partner Code
55442435982,,1704,,,7/4/2010,,,,25,,10746,528.02,,,7/5/2010,,530250010,6231440010,82042000,,,,,,,,,,,"869/4 SW 8,0 x 65 mm CZ",20,20,,0.73,,8204200000,,,0.09,,,EA.,,0.0657,7,,,,,,,,,,,,,,,,
55442435982,,1704,,,7/4/2010,,,,25,,10746,528.02,,,7/5/2010,,530250020,6231440020,82042000,,,,,,,,,05060401002,,"869/4 SW 6,0 x 50 mm CZ",20,20,,0.63,,8204200000,,,0.09,,,EA.,,0.0567,7,,,,,,,,,,,,,,,,
55442435982,,1704,,,7/4/2010,,,,25,,10746,528.02,,,7/5/2010,,,6231440030,82042000,,,,,,,,,05060421002,,"869/4 M SW 6,0 x 50 mm CZ",20,20,,0.73,,8204200000,,,0.09,,,EA.,,,7,,,,,,,,,,,,,,,,
же код работает для XLSX
Любое предложение
Спасибо
Это связано с тем, что форматирование некоторых столбцов в excel отличается при преобразовании в csv? – Milen
Я не конвертирую, я просто читаю csv-файл с каким-то фильтром –