我只想访问System.IO.Compression.GZipStream类来解压缩Web Http响应。但由于保护级别,我无法访问GZipStream类。我正在使用Mvvm cross进行移动开发。
这是GZipStream类代码:
命名空间System.IO.Compression
{
internal class GZipStream : Stream
{
public GZipStream(Stream stream, CompressionMode mode);
public GZipStream(Stream stream, CompressionMode mode, bool leaveOpen);
} }
答案 0 :(得分:0)
您可以像这样轻松压缩byte []缓冲区数组
using (var ms = new MemoryStream())
{
using (var gzip = new GZipStream(ms, CompressionMode.Compress))
{
gzip.Write(buffer, 0, buffer.Length);
gzip.Close();
}
compressed = ms.ToArray();
}
答案 1 :(得分:0)
在Xamarin Forms for PCL中我解决了这个问题,刚刚替换了your_project_name .csproj
中的 TargetFrameworkProfileFROM:
Profile259
TO:
Profile111
也可以尝试安装NuGet包 Microsoft.Bcl.Compression ,这个选项虽然解决了访问GZipStream的问题,但是在编译时我遇到了System.TypeLoadException。