ローカルデータベースに保存されたcsvファイルとデータをアップロードしようとしています。しかし、私は私のコードを実行すると、「インストール可能なISAMを見つけることができませんでした」と述べました。私はそれを修正する方法がわかりません。私は研究しており、ほとんどのエラーは関連しています。しかし、私は別のコードで強調表示されています。インストール可能なISAMが見つかりませんでした( 'throw ex;'行にあります)
どうすれば修正できますか?
マイコード:
const string CSV_CONNECTIONSTRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"{0}\";Extended Properties=\"csv;HDR=YES;FMT=Delimited\"";
string csvPath = Server.MapPath("~/Files1/");
string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
FileUpload1.SaveAs(Path.Combine(csvPath, fileName));
var AllFiles = new DirectoryInfo(csvPath).GetFiles("*csv");
string File_Name = string.Empty;
string ConString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
for (int i = 0; i < AllFiles.Length; i++)
{
try
{
File_Name = AllFiles[i].Name;
DataTable dt = new DataTable();
using (OleDbConnection con = new OleDbConnection(string.Format(CSV_CONNECTIONSTRING, csvPath)))
{
using (OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [Mcsv]", con))
{
da.Fill(dt);
}
}
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(ConString))
{
bulkCopy.ColumnMappings.Add(0, "medicine_id");
bulkCopy.ColumnMappings.Add(1, "category_id");
bulkCopy.ColumnMappings.Add(2, "subcategory_id");
bulkCopy.DestinationTableName = "medicine";
bulkCopy.BatchSize = dt.Rows.Count;
bulkCopy.WriteToServer(dt);
bulkCopy.Close();
}
}
catch (System.Exception ex)
{
throw ex;
}
であることが示さエラー 'スローEX;'
私はまだそれを得るいけないado.net –
を使用していないのcsvパーサがたくさんあります。.. – user8090359