В сети есть различные ресурсы, объясняющие, как сериализовать некоторый объект C # в строку JSON. Однако мне не удалось заставить их работать с MonoTouch 3.2.4 .
Альтернативы, с которыми я столкнулся:
пространство имен System.Json
Я уже успешно использую пространство имен System.Json для десериализации данных . Следовательно, для простоты я бы предпочел придерживаться этого, если возможно. К сожалению, я понятия не имею, как с его помощью сериализовать (или возможно ли это вообще).
System.Runtime.Serialization.Json.DataContractJsonSerializer
Пространство имен System.Runtime.Serialization.Json недоступно в MonoTouch. Я где-то читал, что это часть .NET 3.5 и что MonoTouch находится на уровне .NET 2.0. Это могло бы объяснить это.
System.Web.Script.Serialization.JavaScriptSerializer
Этого также нет в MonoTouch (на самом деле, кажется, что доступен только System.Web.Services).
Json.NET, Джеймс Ньютон-Кинг
Мне удалось заставить это работать на симуляторе, включив сборочную dll .NET 2.0 и используя Newtonsoft.Json.JsonConvert.SerializeObject (). Однако это не компилируется для устройства с ошибкой « mtouch не удалось без вывода ». Как только я удаляю ссылку на сборку, она компилируется нормально.
Есть ли способ заставить одну из них работать с MonoTouch? Есть ли другие альтернативы, которые можно попробовать?
Спасибо