1

我的 Windows Phone 8.1 Silverlight 项目中有一个奇怪的错误。我刚刚创建了一个小型测试项目并获得了相同的行为:

如果我安装“Microsoft.Bcl.Compression”

然后是“SQLite.Net.Platform.WindowsPhone8”

通过 NuGet,如果我尝试压缩文件,即使我在任何行中都没有使用 SQLite.NET,我也会收到以下异常。

在 entry.Open() 的以下代码中:

var entry = archive.CreateEntry(Path.GetFileName(file.Name));

using (var entryStream = entry.Open())

mscorlib.ni.dll 中出现“System.IO.Compression.ZLibException”类型的异常,但未在用户代码中处理

附加信息:无法正确加载基础压缩例程。

如果我从项目中删除 SQLite,那么压缩会按预期成功运行。

我使用压缩几个月没有问题,然后添加了 SQLite.NET 支持,现在以一个奇怪的异常结束。

我做错了吗?

小测试项目: CompressionAndSQLiteExample.zip

4

1 回答 1

3

Microsoft.Bcl.Compression.targets 脚本存在问题,因为它使用与 sqlite-net-wp8、InjectReference 相同的目标名称。

我将 InjectReference 更改为 BCLCompressionInjectReference 并重新加载了项目,现在它工作正常。

于 2015-02-24T22:33:49.863 回答