Benzer bir sorunu kendim takip ettim. Özel serileştiriciler kullanmayı denedim (çünkü karmaşık bir nesneyi seri hale getirdiğimden), ancak sonuçta yaptığım çok sayıda istekten birine uygulandığından, aşağıdakiler çok daha kolaydı.
request.OnBeforeDeserialization = (x =>
{
x.Content = x.Content.Replace("[]", "{}");
});
Bu özel bir talep durumunda istek nesne inşa edildi
, I
{}
ile yanlış
[]
yerine bir geri ayarlamak için
OnBeforeDeserialization
özelliği kullanılır. Bu benim için çalışıyor çünkü ben
x.Content
geri kalanında geri alıyorum veriler biliyorum bile bu özel durumda, değerlerde bile hiçbir zaman
[]
içermeyecektir.
Bu, bir başkasına yardımcı olabilir, ancak kesinlikle dikkatli kullanılmalıdır.
Yanıtın sunucudan ne olduğunu değiştirme şansınız var mı? Boş bir dizi yerine [} boş bir nesne {} döndürmüş olmalı. İkisi de JSON'da uyumlu değildir. –
Basit korsanları düşünebilirim ama bununla ilgili. – evanmcdonnal
@Thomas: Bunun hakkında daha fazla düşüncesi olan var mı? Cevap buldun mu? Bunu Facebook API'sından alıyorum. Belirli bir çağrıda, bazı geçersiz veriler gönderdiğinizde, neyin yanlış olduğunu ve neden olduğunu söyleyen bir sözlük döndürür. Aksi halde boş bir json dizisi döner [] '. Çok can sıkıcı. Fikirler? – xan