C# 例外情况;尝试使用安全透明方法';NPOI.OpenXml4Net.OPC.ZipPackage“;
我正在尝试使用NPOI从C#中的excel文件中读取数据。下面是我用来初始化变量的代码片段。但是在初始化工作簿时,下面是我得到的一个例外C# 例外情况;尝试使用安全透明方法';NPOI.OpenXml4Net.OPC.ZipPackage“;,c#,npoi,C#,Npoi,我正在尝试使用NPOI从C#中的excel文件中读取数据。下面是我用来初始化变量的代码片段。但是在初始化工作簿时,下面是我得到的一个例外 public class Excelhandler { public static XSSFWorkbook workbook; public static FileStream fileStream; static Excelhandler() { try { strin
public class Excelhandler
{
public static XSSFWorkbook workbook;
public static FileStream fileStream;
static Excelhandler()
{
try
{
string pth = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
string actualPath = pth.Substring(0, pth.LastIndexOf("bin"));
string projectPath = new Uri(actualPath).LocalPath;
string path = projectPath + @"TestData\Data.xlsx";
//string path = ConfigurationManager.AppSettings["TestDataPath"];
fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);
workbook = new XSSFWorkbook(fileStream);
}
同一段代码在另一个C#项目中工作,但突然不起作用。以下是我正在使用的版本:-
NPOI-2.3.0
SharpZipLib(NPOI依赖项)-1.0.0
.Net Framework-4.5.2
异常-安全透明方法“NPOI.OpenXml4Net.OPC.ZipPackage..ctor(System.IO.Stream,NPOI.OpenXml4Net.OPC.PackageAccess)”尝试访问安全关键方法“ICSharpCode.SharpZipLib.Zip.ZipInputStream..ctor(System.IO.Stream)”失败。将SharpZipLib Nuget更新到1.0.0时,我面临同样的异常。回滚到minimun版本0.86.0,如NPOI 2.3.0 Nuget dependency中所示,所有内容都重新运行。这很重要。我在VS2017、NPOI 2.3.0和SharpZipLib 1.0.0中也遇到了这个问题 谢谢你 我没有解决在NuGet中将SharpZipLib的verison更改为0.86的问题。 测试后,我发现如果App.config中有以下内容,它也应该删除这些内容:
<assemblyIdentity name="ICSharpCode.SharpZipLib" publicKeyToken="1b03e6acf1164f73" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.0.0.999" newVersion="1.0.0.999"/>
因此,不仅要将SharpZipLib的verison回滚到0.86,还要修改App.config.以安装0.86:
安装软件包SharpZipLib-版本0.86.0