无法加载文件或程序集ICSharpCode.SharpZipLib ...使用nuGet包时ExcelDataReader

Tra*_*s J 15 c# sharpziplib nuget asp.net-mvc-3 exceldatareader

错误:

无法加载文件或程序集'ICSharpCode.SharpZipLib,Version = 0.85.5.452,Culture = neutral,PublicKeyToken = 1b03e6acf1164f73'或其依赖项之一.系统找不到指定的文件

堆:

[FileNotFoundException:无法加载文件或程序集'ICSharpCode.SharpZipLib,Version = 0.85.5.452,Culture = neutral,PublicKeyToken = 1b03e6acf1164f73'或其依赖项之一.系统找不到指定的文件.]
Excel.Core.ZipWorker.Extract(Stream fileStream)+0
Excel.ExcelOpenXmlReader.Initialize(Stream fileStream)+78

[Asp.Net Mvc3 C#]

使用NuGet包ExcelDataReader我试图打开一个保存在文件系统上的.xlsx文件.这是使用的代码:

string filePath = HttpContext.Server.MapPath("~/blank3.xlsx");
FileStream stream = System.IO.File.Open(filePath, FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
Run Code Online (Sandbox Code Playgroud)

这是nuget包的网站:http://exceldatareader.codeplex.com/

是什么赋予了?这应该没有任何障碍.

den*_*er9 16

我遇到了同样的问题; 为了解决这个问题,我在他们的codeplex项目中找到了合适的强名称程序集.

http://exceldatareader.codeplex.com下载源代码,从他们的LIB目录中获取程序集并从我的项目中引用它.

  • 你可以对你的流程更明确一点吗? (2认同)

Ole*_*hko 5

如果你得到的是:

无法加载文件或程序集“ICSharpCode.SharpZipLib,版本=0.86.0.518,Culture=neutral,PublicKeyToken=1b03e6acf1164f73”或其依赖项之一。该系统找不到指定的文件。

然后解决方案是从 SharpZipLib网站下载最新的(或为您的错误选择正确的版本),并将其放在 ExcelDataReader 所在的文件夹中(无需引用它)。ICSharpCode.SharpZipLib.dllExcel.dll