Я пытаюсь получить результаты от SO API в приложении WP7. Я смог заставить его работать в консольном приложении, когда использовал следующий код
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. Если я выберу что-нибудь еще, он вернется с заголовком Error GZIP, первый магический байт не совпадает »или что-то подобное.
WP7 не имеет значения по умолчанию, он имеет только Unicode и UTF8, которые ни один из них не работает.
Идеи