我将一个小型控制台应用程序(.NET 4.5)移植到Mono(在OpenSUSE 13.1上运行3.4.0)。似乎System.IO.Compression
和System.IO.Compression.FileSystem
下的某些方法没有实现?
如果我不将这两个DLL包含在我的exe中,我会得到
[ERROR]致命的未处理的异常:System.NotImplementedException:The 请求的功能未实现。
如果我包含这两个DLL,我会得到
[错误]致命的不受欢迎的异常:System.InvalidProgramException: System.IO.Compression.ZipFile:CreateFromDirectory中的IL代码无效 (string,string,System.IO.Compression.CompressionLevel,bool):方法 身体是空的。
http://www.go-mono.com/status/似乎没有太多关于这些命名空间的信息。
有没有人使用.NET 4.5内置函数在Mono中创建和提取Zip文件?我是否错过了某些问题,还是应该使用像SharpZipLib
这样的第三方库?
答案 0 :(得分:0)
我最终用System.IO.Compression
替换了SharpZipLib.FastZip
次来电。它非常简单,只涉及从NuGet获取二进制文件,用SharpZipLib替换内置函数调用,并在Mono上运行。
感谢@leppie和@Jester的评论!