12. 突出显示以下代码,右键单击该代码,然后单击复制。在 WebForm1.aspx.cs 中,将这些代码复制到 Page_Load 事件中:
// Create connection string variable. Modify the "Data Source" // parameter as appropriate for your environment. String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Server.MapPath("../ExcelData.xls") + ";" + "Extended Properties=Excel 8.0;";
// Create connection object by using the preceding connection string. OleDbConnection objConn = new OleDbConnection(sConnectionString);
// Open connection with the database. objConn.Open();
// The code to follow uses a SQL SELECT command to display the data from the worksheet.
// Create new OleDbCommand to return data from worksheet. OleDbCommand objCmdSelect =new OleDbCommand("SELECT * FROM myRange1", objConn);
// Create new OleDbDataAdapter that is used to build a DataSet // based on the preceding SQL SELECT statement. OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
// Pass the Select command to the adapter. objAdapter1.SelectCommand = objCmdSelect;
// Create new DataSet to hold information from the worksheet. DataSet objDataset1 = new DataSet();
// Fill the DataSet with the information from the worksheet. objAdapter1.Fill(objDataset1, "XLData");
// Bind data to DataGrid control. DataGrid1.DataSource = objDataset1.Tables[0].DefaultView; DataGrid1.DataBind();
// Clean up objects. objConn.Close(); 13. 在文件菜单中,单击全部保存来保存项目文件。
14. 在生成菜单上,单击生成以生成项目。这就准备好了代码隐藏页中的代码,使之能够执行了。
15. 在解决方案资源管理器中,右键单击 WebForm1.aspx,然后单击在浏览器中查看以运行代码。
其他代码说明
本文中的示例代码使用 Microsoft Jet OLE DB 提供程序访问 Excel 工作表。此代码使用以下连接字符串连接到工作表:
// Create connection string variable. Modify the "Data Source" // parameter as appropriate for your environment. String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Server.MapPath("../ExcelData.xls") + ";" + "Extended Properties=Excel 8.0;"; 正如注释中所描述的那样,必须修改特定 Excel 工作表的路径信息。此外,还必须设置 Extended Properties 参数的值,以便正确地连接到文件。
注意,连接字符串使用 Server.MapPath 函数。此函数使用文件相对于 Microsoft Internet 信息服务 (IIS) 的路径,并返回该文件的硬盘路径。例如,在创建示例 Excel 工作表 部分中,您在 Web 根目录中创建了 ExcelData.xls,该目录通常位于 C:\Inetpub\Wwwroot。这还会在 Wwwroot 文件夹中创建名为 ExcelCSTest 的子文件夹,并在 ExcelCSTest 文件夹中创建名为 WebForm1.aspx 的文件。
在此示例中,硬盘上的文件路径如下:
C 驱动器 - Inetpub - Wwwroot(其中包含 ExcelData.xls) - ExcelCSTest(包含 WebForm1.aspx) 文件的 IIS 路径如下所示:
Web 根目录(其中包含 ExcelData.xls) - ExcelCSTest(包含 WebForm1.aspx) 在本例中,WebForm1.aspx 页到 ExcelData.xls 文件的相对 路径为“../ExcelData.xls”。“../”字符通知 IIS 转到上一级文件夹。因此,代码
Server.MapPath("../ExcelData.xls") 返回以下字符串: C:\Inetpub\Wwwroot\ExcelData.xls 您无需使用 Server.MapPath。您也可以将此信息硬编码为一个特定的路径,或使用任何方法提供该 Excel 文件在硬盘上的位置。
|