0

我正在尝试使用 DataContractJsonSerializer 但我似乎无法获得它的引用/命名空间。我在 .NET Framework 4.5 上创建了我的应用程序。

当我单击添加参考时,我只获得 System.ServiceModel 的 2.0.5.0 版本

4

2 回答 2

2

如果你想让 DataContractJsonSerializer 与 Android 一起工作,你需要创建一个 PCL 项目,然后它将在命名空间 System.Runtime.Serialization.Json 下可用。这需要 Xamarin 营业执照或更高级别才能工作。

更好的选择是使用 Json.NET(如果您多次使用它,比 DataContractJsonSerializer 快得多)或 ServiceStack.Text(比 Json.NET 快得多)。XLabs 提供了关于移动兼容序列化程序的抽象(Nuget,搜索 XLabs.Serialization),并具有 Json.NET、ServiceStack.Text (v3)、ProtoBuf 和 DataContractSerializer(.NET XML 序列化程序)的插件。包中省略了 DataContractJsonSerializer,因为它需要商业许可证,并且实际上并没有提供太多的 Json.NET 或 ServiceStack。

于 2015-04-10T05:16:10.723 回答
-1

DataContractJsonSerializer 不适用于 Xamarin。我使用 Newtonsoft.Json nuget 包来处理 json 序列化,到目前为止还没有发现任何问题。这很简单:

字符串 str = Newtonsoft.Json.JsonConvert.SerializeObject(myObject);

于 2015-04-09T14:03:50.950 回答