问题标签 [jsonconvert]

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 回答
1621 浏览

c# - 为什么在反序列化到字典时 JsonConvert 抛出异常

我在将 JSON 字符串序列化为键/值字典时遇到问题。代码如下:

这个例子看起来很完美,给了我 {[id,123]}。

现在。当我将数字更改为“070809”之类的数字时,突然出现异常:“Newtonsoft.Json.JsonReaderException:输入字符串 '070809' 不是有效数字。路径 'id',第 1 行,位置 12。---> System.FormatException:其他不可解析的字符位于字符串的末尾。”

有什么建议么?

0 投票
1 回答
147 浏览

json - 更新子资源时的标准 REST Api 约定

我有一种情况:类别 - 不同类型的主数据。订单 - 引用了类别。它是从 Order 到 Category 的一对一映射。Order 表有一个外键列到 Category。现在 api 来获取订单

/users/orders

将返回类型为

{ "name: "abc", "categoryId" : 23 }

会很好,或者我们应该将json返回为

{ "name: "abc", "category" : "CAT-A" }

我们还有一个客户知道类别的创建/更新订单用例。我们需要一个 api 来发布带有类别的新订单。应该是这样的吗?

还是这样的?

0 投票
0 回答
175 浏览

c# - 序列化 HttpActionExecutedContext 对象时出现超时错误

我正在我的项目中编写一个异常测试过滤器,我想在其中记录请求和响应对象。这是我的代码:

在执行上述代码时,它总是抛出异常Error getting value from 'ReadTimeout' on 'Microsoft.Owin.Host.SystemWeb.CallStreams.InputStream'。任何人都可以为这个问题提出任何解决方案吗?如何序列化HttpActionExecutedContext的RequestResponse对象?

0 投票
2 回答
227 浏览

c# - 从未知的 json 结构中读取 - 初学者

我有一个 JSON 字符串,我需要从中提取值 - 例如,我需要获取IDand的值Name

注意:我没有为此创建模型JSON

我的代码:

console.write 不打印ID或可以打印Name。我该如何解决这个问题?我希望我能很好地解释这个问题,对不起,我是新手。

0 投票
0 回答
524 浏览

c# - 如何使用自定义 JsonConverter 将平面 JSON 映射到嵌套对象?

我需要将平面 JSON 映射到嵌套对象,其中平面属性用Flat属性标记。例如映射

到以下模型

应该给Bar { Foo { X = 1, Y = 2 }, Z = 3 }。我已经实现了将复杂对象转换为 JSON 但反之亦然:

UPD:更新了代码。InvalidCastException它适用于某些情况,但对于尝试读取 JSON 时抛出的某些(非平面)属性(请参阅ReadObject,有一条带有异常消息的注释)。例如,我有 DTO 类

Name已正确处理,但尝试读取Foo会导致异常。最小的可重现示例:https ://pastebin.com/2gXNiLMz

0 投票
1 回答
956 浏览

c# - 使用带有 TypeNameHandling 标志的 Json.NET 序列化具有 IConvertible 值的字典

我有以下字典,我非常想使用 Json.Net 对其进行序列化。字典包含IConvertible接口项,允许我将所需的任何原始类型添​​加到字典中。

我有以下使用 Json.net 序列化列表的实现:

这给了我以下输出:

然而。当试图反序列化时:

...我收到以下错误:

我环顾四周,发现以下内容;但设置 typeNameHandling 并没有解决它。我也不能用IConvertible类型名称属性来装饰值,因为它是字典。

在 JSON.NET 中反序列化的转换接口

我还没有找到有关该主题的任何其他信息,因此将不胜感激!

我也找到了这个解决方案,但它涉及创建一个 ExpandableObjectConverter 这不是一个非常优雅的解决方案。

使用带有 ExpandableObjectConverter 的 JSON.NET 的问题

0 投票
1 回答
1073 浏览

c# - C# - OutOfMemoryException 在 JSON 文件中保存列表

我正在尝试保存压力图的流数据。基本上我有一个压力矩阵定义为:

基本上,我pressureMatrix每 10 毫秒就会得到一个,我想将所有信息保存在 JSON 文件中,以便以后能够重现它。

我要做的是,首先,用所有用于记录的设置写我称之为标题的内容,如下所示:

然后,每次我得到一个新的压力图时,我都会创建一个新的线程来添加新的PressureMatrix并重写文件:

大约 20-30 分钟后,我得到一个 OutOfMemory 异常,因为系统无法保存记录的数据var,因为List<PressureMatrix>它太大了。

我该如何处理以保存数据?我想保存24-48小时的信息。

0 投票
1 回答
38 浏览

python - str 无法处理转换时会带来什么样的错误?

我正在编写一种“通用” json 解码器,它将使用默认的 json 编码器加集转换它可以转换的所有内容,以及它将使用转换的所有其他内容str()- 这有点愚蠢,但它可以让用户安静地工作并让用户知道最初有什么样的数据。

因此,通过小修改,以下代码取自此处

然后,如果我尝试使用此编码器转换函数,它将返回如下内容:

这又有点愚蠢,但对我的目的来说完全没问题。

问题是:如果str()无法转换作为输入参数提供的任何内容怎么办?会触发什么样的错误?我查看了str源代码,并没有得到准确的时间(如果有的话?)它捕获了可能的转换错误。或者假设转换提供的任何类型的输入?

0 投票
0 回答
53 浏览

c# - 自定义 JSONConvert 序列化

我正在尝试执行一些 JSONConvert 序列化,但我遇到了砖墙。我所有的相关对象都是某个类的子类,比如 Super 类。Super 的子类可以在该类中拥有其他 Super-inherited 成员,即

我的目标是,当它被序列化时,为所有这些成员运行一个自定义 JsonConverter,以便为它们单独准备序列化,即根据对象内的数据删除不必要的数据。我尝试在抽象类上使用 [JsonConverter] 标记,这会导致 StackOverflowException。

每当我尝试使用自定义序列化程序时,它只为父对象运行,不为任何子属性运行,因此在这种情况下,它不允许“foo”变量被处理以进行序列化。它也不应该为非超级属性运行。

JsonConvert 可以使用这样的转换器吗?我已经环顾四周,但没有找到类似的东西。

谢谢。

0 投票
1 回答
141 浏览

c# - 使用 JsonConvert.SerializeObject C# 时出现 JSON 结果问题

将 C# 模型序列化为 JSON 对象时,我得到以下结果。

这是我的模型。

在我的控制器中,我正在为模型创建一个对象并分配值。

返回结果时,我使用了 JsonConvert.Serialize

我得到如下 JSON 结果:

"{\"RowsInserted\":1,\"RequestStatus\":\"SuccessFul\"}"

我期待的实际结果是:

{"RowsInserted":1,"RequestStatus":"SuccessFul"}