dailiboy
2017-12-29 08:33
采纳率: 50%
浏览 1.1k

ASP.NET 导入 导出EXCEL

我之前做了EXCEL的导入和导出,但是用的是OFFICE2003,现在要换成OFFICE2010.有几个地方需要做修改,请问该改成多少。。

.CS文件中的内容

 string conn = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =" + Server.MapPath("/") + filename + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
                            OleDbConnection thisconnection = new OleDbConnection(conn);

web.config中的内容

 <add assembly="Office, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"/>

bin文件夹中加载的文件
Microsoft.Office.Interop.Excel.dll
Interop.Excel.dll
是否需要替换

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • threenewbee 2017-12-29 11:07
    已采纳

    你的代码,根本只能读取excel而不能写入,oledb/ace是只读的。无论你怎么修改连接字符串。还是早点换npoi吧。
    用Microsoft.Office.Interop.Excel.dll也可以,但是服务器上用这个不稳定,它依赖和excel本身进程外的ole交互。
    除了npoi,也可以aspose

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 风凌119 2017-12-29 08:49

    为什么不使用NPOI

    评论
    解决 无用
    打赏 举报
  • 青岛小旮旯 2017-12-29 09:18

    首先链接字符串变了
    string excelConnectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=Yes;IMEX=1;'", fileFullPath);

    1.Microsoft.ACE.OLEDB.12.0
    2.Properties='Excel 12.0;

    评论
    解决 无用
    打赏 举报
  • 勿忘名 2018-01-01 02:48

    除了npoi,也可以aspose

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题