У меня проблема с чтением DateColumns из листа Excel.
Иногда люди используют разные форматы даты, и это создает проблему. Скажем, когда я ожидаю 07/26/2010 из столбца Excel, я получаю 26-Jul-2010, потому что пользователь изменил формат даты.
Я использую Microsoft.Jet.OLEDB для чтения листа xls в файл DataTable.
Могу ли я каким-то образом заставить OleDb reader независимо от того, какой формат даты установлен в XLS, преобразовывать все даты в формат ММ/ДД/ГГГГ?
Я использую этот фрагмент кода для чтения файла Excel:
string strConn;
strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + uploadedFileInfo.FullName + ";" +
@"Extended Properties=""Excel 8.0;HDR=NO;""";
using (OleDbConnection connToExcel = new OleDbConnection(strConn))
{
//You must use the $ after the object you reference in the spreadsheet
connToExcel.Open();
string firstSheetName = ExcelUploadedFileReaderBuilder
.GetFirstExcelSheetName(connToExcel);
OleDbDataAdapter myCommand
= new OleDbDataAdapter(String.Format("SELECT * FROM [{0}]", firstSheetName), connToExcel);
DataSet myDataSet = new DataSet();
myCommand.Fill(myDataSet, "uploadedExcelTable");
DataTable dtUploadedExcel = myDataSet.Tables["uploadedExcelTable"];
lineCount = GetLineNumberWhereNULLRowOccured(dtUploadedExcel) + 1;
connToExcel.Close();
}