gpt4 book ai didi

silverlight - 使用 json.net 在 Silverlight 中序列化匿名类型

转载 作者:行者123 更新时间:2023-12-04 10:05:30 24 4
gpt4 key购买 nike

我在仅在 Silverlight 平台上序列化匿名类型时遇到了一些问题。我在 .net 4.0 和 .netcf 上有运行良好的代码。

这条线就在这里

Newtonsoft.Json.JsonConvert.SerializeObject(new { Something = "yup" });

抛出一个名副其实的家伙,JsonSerializationException:
Error getting value from 'Something' on '<>f__AnonymousType0`1[System.String]'.

我尝试了 4.0r1 和 4.0r2 - 我做错了什么还是服用了疯狂的药丸?

最佳答案

问题是匿名类型被编译器定义为内部类。 JSON.NET 依赖于反射来工作,并且在 Silverlight 中,跨程序集边界的反射仅适用于公共(public)类型(当由部分受信任的程序集使用时,例如这个)。

我认为上一个答案中提到的 DataContractJsonSerializer 是在这种情况下要走的路,因为它是框架的一部分并且应该具有额外的权限。

要尝试的另一件事是使用字典或 ExpandoObject 而不是匿名类型,而是使用 YMMV。

关于silverlight - 使用 json.net 在 Silverlight 中序列化匿名类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6661116/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com