在网络上有许多资源可以解释如何将一些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可用)。
- James Newton-King的Json.NET 我设法让它在模拟器上工作,方法是包含.NET 2.0程序集dll并使用Newtonsoft.Json.JsonConvert.SerializeObject()。但是,在设备上编译时会出现错误“mtouch failed with no output”。一旦我删除程序集引用,它就可以正常编译。
有没有办法让其中之一与MonoTouch一起工作?还有其他要尝试的选择吗?
谢谢
我找到的替代方法包括:
- 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可用)。
- James Newton-King的Json.NET 我设法让它在模拟器上工作,方法是包含.NET 2.0程序集dll并使用Newtonsoft.Json.JsonConvert.SerializeObject()。但是,在设备上编译时会出现错误“mtouch failed with no output”。一旦我删除程序集引用,它就可以正常编译。
有没有办法让其中之一与MonoTouch一起工作?还有其他要尝试的选择吗?
谢谢