将电子表格导入asp.net程序并列出工作表

时间:2010-04-05 15:05:46

标签: c# asp.net excel

我必须在我的asp.net项目中导入电子表格的内容。后面的代码是c#。我想出了如何在用户的计算机上找到电子表格,以及如何将给定工作表中的数据导入数据表。问题是我可能不知道工作表的名称提前。如何向用户显示可用工作表列表并让他们选择一个?

鲍勃

2 个答案:

答案 0 :(得分:1)

您无法告诉ASP.NET页面在用户的PC上查找文件的位置。如果是这样,就没有什么可以阻止你窥探用户的整个机器并收集个人信息。

您的选项是向用户提供文件上传控件(最实用的是asp:FileUpload服务器控件)并允许用户选择要提交的文件。如果您需要更多的控制权,那么您将不得不使用除(或除了)ASP.NET之外的其他内容,例如驻留在用户计算机上的winform或控制台应用程序。

答案 1 :(得分:0)

我找到了答案:

OleDbConnection objConn = null;  objConn = new OleDbConnection(pConnectionString); // pConnectionString的样子 //“Provider = Microsoft.Jet.OLEDB.4.0;数据源= C:\ Source \ Sheetname.xls;扩展 // Properties = Excel 8.0;“      //打开与数据库的连接。      objConn.Open();      //获取包含架构guid的数据表,以及工作表名称。      dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);

dt行(数据表包含工作表名称)