WP7アプリでSOAPIから結果を取得しようとしています。次のコードを使用すると、コンソールアプリで動作させることができました
static void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
Console.Clear();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(RootObject));
var stream = new MemoryStream(Encoding.Default.GetBytes(e.Result));
var gzstream = new GZipInputStream(stream);
RootObject qs = ser.ReadObject(gzstream) as RootObject;
foreach (Question q in qs.questions)
{
Console.WriteLine(q.title);
}
}
重要な部分はEncoding.Defaultでした。他のものを選択すると、エラーGZIPヘッダーが返され、最初のマジックバイトが一致しません」などです。
WP7にはデフォルトがなく、UnicodeとUTF8しかなく、どちらも機能しません。
アイデア?