2017-12-31 39 views
2

JsonConvert.SerializeObject scheint in Xamarin-Formularen nicht zu funktionieren. Oder ich verpasse hier etwas. Hier ist die Ausgabe, wenn ich ein einfaches Objekt serialisieren. enter image description hereJsonConvert.SerializeObject gibt immer {} in XamarinForms zurück

Sehen Sie, dass es {} zurückgibt. Ich habe auch versucht, eine Klasse zu serialisieren und sie hat das Gleiche zurückgegeben.

Was könnte das Problem hier sein?

UPDATE

Noch in dieser Frage keine Lösung. Ich habe versucht, eine einfache Konsole-Anwendung zu erstellen, und serializeObject arbeitet an diesem Projekt, so nehme ich an, dass es nicht nur in Xamarin-Formularen funktioniert. Hat jemand ein Xamarin-Formular-Projekt, in dem JSON.NET serializeobject funktioniert?

Ich benutze Visual Studio 2017, json.net 10.0.3 und Live-Player.

+0

Sie sicher, dass dies geschieht nur in XamarinForms? Versuchen Sie, ein einfaches Konsolenprojekt zu erstellen. Welche Version von Newtonsoft.Json verwenden Sie? – eocron

+0

Ich versuchte es in einer einfachen Konsole App und es hat funktioniert. Es ist auf derselben Version von newtonsoft.json. 10.0.3. Ich werde versuchen, in Xamarin downgrade und sehen, ob es auf alten Versionen –

+0

funktioniert Ich versuchte Downgrade und immer noch nicht funktioniert –

Antwort

0

Ich versuchte Emulator auf einer schnellen Maschine und die serialize Werke einrichten! Es bedeutet also, dass es nicht funktioniert, wenn ich es auf einem Live-Player mit meinem Android-Handy verwende. Ich werde dies als eine Antwort für jetzt festlegen. wenn jemand anderes geschrieben, wie man es auf Live-Player zu machen, arbeiten, ich es als die richtige Antwort

0

Bitte versuchen Sie diesen Code:

JsonSerializerSettings settings = new JsonSerializerSettings(); 
settings.ContractResolver = new CamelCasePropertyNamesContractResolver(); 
var send_Parameter = new { foo = "bar" }; 
var data = JsonConvert.SerializeObject(send_Parameter, settings); 
+0

immer noch das gleiche :(es scheint nicht in xamarin.forms funktionieren. In der Konsolenanwendung funktioniert es –

2

Dies ist ein bekanntes Problem sehen https://developer.xamarin.com/guides/cross-platform/live/limitations/

Eingeschränkte Unterstützung für Reflexion (derzeit wirkt sich auf einige beliebte nugets gesetzt wird, wie SQLite und Json.NET). Andere NuGets werden weiterhin unterstützt.

Wenn Sie es zu einem APK kompilieren, funktioniert es gut auf dem tatsächlichen Gerät.

veröffentlicht auch ein Problem hier: https://github.com/JamesNK/Newtonsoft.Json/issues/1578