我的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())
类型' System.IO.Compression.ZLibException'的例外情况发生在 mscorlib.ni.dll但未在用户代码中处理
附加信息:基础压缩例程不能 正确加载。
如果我从项目中删除SQLite,则压缩会按预期成功运行。
我使用压缩几个月没有问题,然后添加了SQLite.NET支持,现在最终出现了一个奇怪的例外。
我做错了吗?
小型测试项目: CompressionAndSQLiteExample.zip
答案 0 :(得分:3)
Microsoft.Bcl.Compression.targets脚本存在问题,因为它使用与sqlite-net-wp8,InjectReference相同的目标名称。
我将InjectReference更改为BCLCompressionInjectReference并重新加载项目,现在它可以正常工作。