我正在开发一个ASP.NET应用程序.我有一个名为ExcelApp的Excel 2013文件,我也在我的项目中添加了.我无法访问该文件.
这是我的DAL类:
public string ExcelConnection = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Nimit\ExcelApplication.xlsx;Extended Properties='Excel 12.0 Xml';HDR=YES";
OleDbDataAdapter DbAdap;
DataTable dt;
public DataTable Get_ExcelSheet()
{
OleDbConnection DbCon = new OleDbConnection(ExcelConnection);
DbAdap = new OleDbDataAdapter("SELECT * FROM [Sheet1$]",DbCon);
dt = new DataTable();
DbAdap.Fill(dt);
return dt;
}
Run Code Online (Sandbox Code Playgroud)
我的cs文件代码:
public partial class WebForm1 : System.Web.UI.Page
{
DAL obj = new DAL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack == true)
{
Get_Data();
}
}
void Get_Data()
{
GridView1.DataSource = obj.Get_ExcelSheet();
GridView1.DataBind();
}
}
Run Code Online (Sandbox Code Playgroud)
我的调试器在执行此行时显示错误:
DbAdap.Fill(dt);
Run Code Online (Sandbox Code Playgroud)
例外是:

我解决了我的问题.这是我的代码:
public class DAL
{
OleDbDataAdapter DbAdap;
DataTable dt;
public DataTable Get_ExcelSheet()
{
OleDbConnection DbCon = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Nimit\\ExcelApplication.xlsx;Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1;\"");
DbAdap = new OleDbDataAdapter("SELECT * FROM [Sheet1$]",DbCon);
dt = new DataTable();
DbAdap.Fill(dt);
return dt;
}
}
Run Code Online (Sandbox Code Playgroud)
我只是在OleDbConnection中提供我的连接字符串.而已.
| 归档时间: |
|
| 查看次数: |
5524 次 |
| 最近记录: |