问题标签 [javascriptserializer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
202 浏览

visual-studio-2010 - 从json反序列化后获取字典的内容

我终于使用 javascriptserializer 来反序列化 json 内容。现在我在字典中有对象,并且想访问内容以获取键值。我只想获取某些字段的值。

反序列化代码;

我现在如何获取 id、from、name、id、to ...等字段?请有任何想法。

{更新}

感谢回复。当我在等待时,我尝试了其他方法,发现如果我只能获得一些关于此的注释或示例,似乎是一种更简单的方法。

好的,这似乎更容易,但我不知道如何遍历令牌对象。未读取消息字段,因为我猜该类型仍然是 Object ,我想知道如何通过这个单独的 JToken 并获取字段。

0 投票
2 回答
1305 浏览

c# - JavaScriptSerializer 在反序列化时抛出 ArgumentNullException

我正在编写一个在 Visual C# 4.0 中向/从后端发布和获取 JSON 的应用程序。

显然,序列化/反序列化 JSON 的最简单方法是 System.Web.Script.Serialization.JavaScriptSerializer,但我遇到了一个奇怪的错误,它抛出 ArgumentNullException,声称该类型为 null。

当以下 JSON 被反序列化时,它可以正常工作:

但是,当反序列化第二个(使用嵌套字典)时,它会失败,类型为 null 错误。

作为参考,我使用以下方法对两个查询进行反序列化:

其中 ObjectIdContainerList 如下(注意 - 它没有实现原始 JSON 对象的所有属性,因为我只对获取 objectId 属性感兴趣):

第一个查询使用完全相同的代码和对象反序列化而没有问题。

有什么建议么?我最好还是去 JSON.NET 吗?

0 投票
2 回答
554 浏览

c# - 从 JavaScriptSerializer 生成时用于 JavaScript 的 Visual Studio Intellisense

在创建客户端对象时,在 Visual Studio 2010 中获取 JavaScript Intellisense 的正确方法是什么JavaScriptSerializer

例如,我有一个Record具有多个属性的类;我正在生成一个集合,Records然后使用JavaScriptSerializer.

代码背后

ASPX 页面

当我预填充 JS 记录变量来模拟Records类时,我得到了 Visual Studio 的完整智能支持。

这行得通,但感觉很脏。有没有更合适的方法?或者这是一种常见的做法?

0 投票
1 回答
603 浏览

vb.net - JavaScriptSerializer 无法解析数据类型

我有一些如下所示的 JSON 数据:

我有一对可序列化的类,如下所示:

当我尝试反序列化为对象时:

我得到一个带有键“data”的根对象,并为另一个带有 2 个子对象的对象赋值,键为“name”和“id”,以及人们可能期望的适当值。但是当我尝试将该对象转换为我的UserData类型时,它会返回Nothing. 我让这段代码在某个时候工作,但现在我回到它并尝试再次使用它,似乎一些代码腐烂已经进入并且它已经停止工作。

这是我尝试将反序列化数据作为UserData对象获取的方式:

0 投票
2 回答
8339 浏览

c# - JavaScriptSerializer - 如何反序列化名称中带有破折号(“-”)的属性?

试图反序列化这个 JSON:

我的课:

我猜累积统计数据不会被反序列化,因为它在我的类中有累积统计变量名称,如何用破折号反序列化那个东西?

0 投票
1 回答
9545 浏览

c# - 使用 json.net 大小限制序列化数据?

我开发了一个 asp.net Web 应用程序,并最初使用内置的 javascript 序列化程序将一些数据序列化为 json 字符串。这变得有问题,因为我后来发现我能够序列化的数据量存在问题。在使用 JSON JavaScriptSerializer 进行序列化或反序列化期间,我不断收到“”错误。字符串的长度超过了 maxJsonLength 属性设置的值”。通过使用 json.net 序列化/反序列化我的数据很快解决了这个问题。这意味着使用 json.net 序列化/反序列化时没有预设的最大大小或者有一个高于 javascriptserializer 使用的限制。

我的问题很简单。在使用 json.net 序列化/反序列化时,我将来会遇到关于大小容量的类似问题吗?即使用 json.net 序列化数据时是否有大小限制,或者我可以假设没有限制,并且随着数据库大小的增加,我的程序应该没问题?我在 json.net 的论坛上问了这个问题,但没有收到回复。我希望这里有人知道答案。提前致谢。

0 投票
2 回答
33257 浏览

c# - 如何使用 C# 解码 JSON 字符串?

我正在寻找一个示例代码/库来使用 C# 解码 JSON 字符串。

要编码,我可以这样做:

但我该如何解码?

0 投票
1 回答
538 浏览

json - 包含数组集合的 JSON 字符串的反序列化

我正在使用“JavaScriptSerializer”来反序列化一个 Json 字符串。此 Json 字符串包含数组的集合,例如

被包围的部分**重复N次。请帮我弄清楚如何反序列化这个 JSON。

谢谢

0 投票
4 回答
1393 浏览

c# - 使用 java-script 选择器遍历 Dictionary

在我看来,我有一个字典,有 [inputID, tooltip]。

此外,我在此页面中有一组输入元素的 id。我需要用我的元素 id 遍历字典:

[1] 我有 System.Collection.Generic.Dictionary`2[System.String, System.String][cvc]

感谢 Jan Jongboom, 最后我得到了我想要的:

0 投票
2 回答
10851 浏览

c# - 使用 JavaScriptSerializer.DeserializeObject 如何取回使用不区分大小写的字符串比较器的字典?

我有一些需要反序列化的 JSON,所以我使用 JavaScriptSerializer.DeserializeObject,例如:

问题是返回的字典有一个区分大小写的键比较器,但我需要不区分大小写。有没有办法找回不区分大小写的字典?

编辑:我不希望将数据复制到新结构,因为我有很多数据,这将是昂贵的。