使用fileupload对话框后,使用oledb引擎打开excel文件时出现问题。如果我使用固定文件名设置oledb连接的文件名,它可以工作,但如果我尝试从fileupload控件获取文件名,我会收到错误外部表不是预期的格式。该文件未在另一个应用程序中打开。我已经尝试在fileupload中处理和关闭所有文件内容。我的代码如下
if (FileUpload1.HasFile)
{
//sXLConnStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strvirtpath + "\\Unlocked Upload-v5.xlsx " + ";Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";";
sXLConnStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strvirtpath + "\\" + FileUpload1.FileName + " ;Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";";
FileUpload1.FileContent.Flush();
FileUpload1.FileContent.Close();
FileUpload1.FileContent.Dispose();
FileUpload1.Dispose();
}
OleDbConnection xlConn = new OleDbConnection(sXLConnStr);
xlConn.Open();
任何帮助都将不胜感激。
答案 0 :(得分:1)
首先保存文件,然后使用保存文件的路径访问它。
FileUpload1.SaveAs(directory + @"\" + filename);