私のアプリケーションが私のサービスの応答を消費しているWindows phone 7 appを開発しています。Windows Phone 7アプリケーションでサービスから返されたxmlの圧縮を解除できませんでしたか?
XMLのサイズが非常に大きいので、私のサービスは、私が使用してXMLを圧縮していた、XML(文字列)の応答を与えている: -
public static string Compress(string text)
{
byte[] buffer = Encoding.UTF8.GetBytes(text);
MemoryStream ms = new MemoryStream();
using (GZipStream zip = new GZipStream(ms, CompressionMode.Compress, true))
{
zip.Write(buffer, 0, buffer.Length);
}
ms.Position = 0;
MemoryStream outStream = new MemoryStream();
byte[] compressed = new byte[ms.Length];
ms.Read(compressed, 0, compressed.Length);
byte[] gzBuffer = new byte[compressed.Length + 4];
System.Buffer.BlockCopy(compressed, 0, gzBuffer, 4, compressed.Length);
System.Buffer.BlockCopy(BitConverter.GetBytes(buffer.Length), 0, gzBuffer, 0, 4);
return Convert.ToBase64String(gzBuffer);
}
私はGZipStreamクラスを使用して追加データを圧縮していますSystem.IO.Compressionを使用して、名前空間が、
私の問題があることである: - 私は(のWindows Phone 7アプリ)は、クライアント側でそれを、圧縮解除することはできませんよ
、私はでそのDLLを追加しようとしましたWindows phone 7アプリプロジェクト
それは言う: - system.Io.Compression dllは、Windows phone 7ランタイムを使用して構築されていないため追加できませんでした。Windows PhoneプロジェクトはWindows電話アセンブリのみで動作します。
私は間違ったことをしています、何か良い方法がありますか?
あなたは私に最適な解決策を教えてもらえますか?事前に
おかげ