问题标签 [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 回答
2975 浏览

.net - 使用 JavaScriptSerializer 序列化为 JSON 时遇到问题

我在使用 System.Web.Script.Serialization.JavaScriptSerializer 将对象序列化为 JSON 字符串时遇到了一些问题。每当我尝试这样做时,我的字符串都会自动进行 html 编码。有没有办法防止这种情况发生?如果可能的话,我真的很想避免使用外部库(代码适用于 .NET 4)。这是我的代码:

它输出字符串

{"StringProperty":"\u003cdiv class=\"blueBackground\"\u003e这是一个非常酷的 div:)\u003c/div\u003e","IntProperty":5}

谢谢!

0 投票
1 回答
1012 浏览

vb.net - twitter json - 无法使用 json.net / javascriptserializer 转换为 jobject 或 jarray

我已经被困了 3 天了……我一直在访问 twitter api 来获取用户列表的 user_timeline,而返回的 json 无法使用。我尝试使用 javascriptserializer 反序列化它并得到一个错误:

传入的无效对象,':' 或 '}'

现在这令人沮丧,因为我希望返回的 json 没有错误。然后我尝试了 json.net 并使用 string.split 拆分帖子,并尝试将每个帖子转换为 Jobject 或 jarray。对于 Jarray 我得到

'加载 jArray 时内容意外结束

对于作业:

'从 jsonreader 读取 JObject 时出错。当前的 jsonreader 项目不是对象,StartArray'

这真是令人沮丧。

这是 json 开头和结尾的示例:

现在我已经在这里格式化了代码并且没有粘贴整个文件,但它对我来说确实是有效的 json,并且在从 twitter api 接收到流后我没有更改任何内容。有人可以指出我正确的方向吗?我真的需要解析这些东西吗?

0 投票
2 回答
535 浏览

json - $.getJSON 没有读取我的 .aspx 返回

因此,我搜索了大多数 getJSON 问题,但仍然无法找到解决问题的方法。我的主要问题是:我有一个对 .aspx 页面进行 $.getJSON 调用的 .js 文件。.aspx 页面返回一个 json 对象。我已经用 demo.js 测试了 $.getJSON,它工作得很好;我能够引用 json 字段。.aspx 页面不是这种情况。这是我的代码:

.js 进行 $getJSON 调用

.aspx 返回 json obj

我在 VB 中放置了一个 msgbox,并从我的本地机器上运行它来查看我的值。它以 json 形式返回 ws 属性设置,该设置在 jsonlint.com 上正确验证。

我也尝试过使用带有 async: false 的 $.ajax 调用,但它不起作用。当我使用有效的 demo.js 时,我在 firebug 中看到了 json 字段;updateSlides.aspx 不是这种情况。

在此先感谢,布赖恩

0 投票
2 回答
12833 浏览

c# - 序列化对象时检测到循环引用 - C#,Json

我正在尝试序列化一个对象以 Json 格式返回它以创建图形。我在类库中执行此操作并将字符串作为更大报告的一部分返回。我收到一个错误,但是说:

A circular reference was detected while serializing an object of type 'MyApp.Data.Shop'.

我正在关注本教程并期望返回一个类似的 Json 字符串(当然还有更多字段) -教程

在我的报告引擎中,此方法中引发了错误-

这是我检索商店销售额的方法:

然后这是我的 MonthlyShopSales 课程:

我正在尝试使用我正在编写的代码相对高效,这就是为什么我两次使用 GetMonthlyShopSales 方法 - 我不一定需要它的所有值,所以我应该为我编写一个单独的、更精简的版本json字符串?我也不确定这是否是我的问题,如果有人可以提供帮助,那就太好了。

这是任何擅长阅读的人的堆栈跟踪:

编辑:

根据要求,这是商店课程。它源自 EF 数据模型,但无论如何它只有 3/4 个字段:

0 投票
1 回答
1845 浏览

c# - 如何使用 JavaScriptSerializer 在 C# .NET 中转义 HTML 元素?

考虑这段代码:

输出响应:

预期响应:

如何获得预期的响应?

0 投票
1 回答
174 浏览

.net - 这似乎是 .NET 的 JavaScript 反序列化中的一个错误……是吗?

基本上,我发现作为 JavaScript 对象(关联数组)的 JSON 字符串,其属性/键之一为空字符串,将导致内置的 .NET 序列化程序引发异常。

例如这段代码:

将抛出 ArgumentException,表明可能正确的 JSON 不允许属性名称为空字符串。只需浏览Crockford网站上的Backaus Naur 表单图/语法图,就可以看出允许使用空字符串。

0 投票
1 回答
373 浏览

c# - 无法反序列化具有子列表的对象

所以我有这个对象:

它在那里有一个相同类型的对象的列表,即 ChildEntitites。我有一个页面将这些数组作为 Json 发布回服务器。这是它返回的 Json:

这是我使用 JavaScriptSerilaiazer 将其转换为实际对象的方式:

(我也尝试过 NewtonSoft,结果相同)

这应该给我一个包含 3 个项目的数组(它确实如此)。第一个项目不应该有任何 ChildEntities,但第二个和第三个项目应该有另一个 JournalItems 列表作为它们的 ChildEntities,但它们也都是空的。

如何获得这些序列化程序之一以将 json 数组反序列化为列表?我可以这样做吗?

0 投票
1 回答
979 浏览

c# - JavaScriptSerializer:有什么方法可以发送未转义的数据?

我写了一个.ToJson()这样的扩展方法:

这让我可以做一些事情,比如让一个 JSON 字符串通过我的Web 服务myObject.ToJson()发送回我的应用程序。.asmx这一切都很好。

出现了一个问题,我正在构建一个需要将大量异步数据传输到该页面的页面,并且我开始达到超过 100k 的数据有效负载。在查看 JSON 时,我注意到它对我发回的任何内容进行编码,这增加了很多额外的字符。由于此应用程序是面向极少数受众的管理工具,因此我并不十分担心这种安全性,但我似乎无法在这里找到如何控制编码。

这是我收到的(示例):

当我应该得到类似的东西时:

有什么方法可以控制 JSON 数据是否被转义?

需要注意的一件事是,我被迫在我的文件中使用它.ajaxSetup()来解析返回的数据:

0 投票
1 回答
2299 浏览

asp.net-mvc - 使用 JavaScriptSerializer 处理 JSON 返回 NULL 对象

我的 Json 字符串:

我的课程:

}

我的代码:

我的问题:

该对象始终返回为 NULL,并且未填充 CaseModel 详细信息。JSON字符串显然有数据,但我觉得我的类结构与根级别的类有些混乱。它似乎与此处和其他地方发布的其他示例相似,所以我现在不知所措。任何帮助是极大的赞赏。

0 投票
3 回答
492 浏览

c# - 如何转换一个json字符串?

似乎无法让这个工作。我有这个 json 字符串,我想将它转换为 C# 对象:

{"name":"mousePos","args":[{"mouseDet":{"rid":"1","posx":1277,"posy":275}}]}

我一直在努力JavaScriptSerializer,但我没有运气。我不确定如何获取 posx 和 posy 的值。谁能建议我如何做到这一点?谢谢您的帮助。

编辑: