Created the bug here
https://issues.apache.org/jira/browse/CB-938


-----Original Message-----
From: Filip Maj [mailto:[email protected]] 
Sent: Tuesday, June 19, 2012 3:51 PM
To: [email protected]
Subject: [WP7] Passing more complex objects over the bridge

... Currently won't work. Basically the DataContractJsonSerializer .NET object 
that we employ to parse JSON on the native side can't parse nested objects in 
JSON. The DataContract stuff is supposed to make it easy to cast the various 
JSON values to .NET types. In the case of a nested object with dynamic keys, 
that you can't model ahead of time, we tried using a Dictionary type on the 
native side. This won't work [1].

This came up when deserializing FileTransfer upload options because they have a 
nested "params" object that house dynamic &key=value URL parameters to send 
with the HTTP request. Not sure if it happens in other spots.

Anywho, one potential solution is to explicitly convert nested objects such as 
these to a dumber structure. In the SO thread [1] they suggest having an array 
of {key:"known1",value:"foo"} pairs replace the objects.
The native side could parse that.

Another option is to use the JSON.net library [2]. MIT license. 300-ish kb .dll.

The stock System.Json namespace that is available in .NET and has better 
capabilities is not available on Windows Phone.

Any other solutions/ideas/comments/thoughts?

[1]
http://stackoverflow.com/questions/8064627/deserializing-json-object-with-u
nknown-fields
[2] http://json.codeplex.com/






Reply via email to