使用 Jayrock 将 JSON 格式的字符串转换为 JsonObject
我的 ASP.NET 应用程序中有一个请求参数。这是 JSON 格式,我想知道是否有一种好的(快速且简单)方法将 JSON 字符串转换为 Jayrocks JsonObject,这样我就可以轻松提取键值对,而无需手动解析字符串?
I have a request parameter in my ASP.NET app. that is in JSON format, and I was wondering if there is a good (quick and easy) way to convert a JSON string to a Jayrocks JsonObject, so I can easily extract key-value pairs without the need to manually parse the string?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
假设
json
是包含 JSON 文本的变量,请使用Jayrock.Json.Conversion.JsonConvert.Import(json)
。您将得到的回报是JsonObject
、JsonArray
、JsonNumber
、System.String
、System.Boolean
或空引用,具体取决于源 JSON 文本中的根 JSON 值。如果您确定它将是一个 JSON 对象,那么您可以安全地转换返回值或使用JsonConvert.Import(json)
。我不鼓励直接使用
JsonObject
,除非您特别依赖它的功能之一。你应该假装你返回的 JSON 对象是一个字典;IDictionary
或IDictionary
。使用最新版本的 .NET Framework 4,您还可以将JsonObject
用作动态对象。Assuming
json
is the variable containing JSON text, useJayrock.Json.Conversion.JsonConvert.Import(json)
. What you will get back in return is either aJsonObject
,JsonArray
,JsonNumber
,System.String
,System.Boolean
or a null reference depending on the root JSON value in the source JSON text. If you know it is going to be a JSON object for sure then you can safely cast the return value or useJsonConvert.Import<JsonObject>(json)
.I would discourage working against
JsonObject
directly unless you particularly depend on one of its features. You should just pretend the JSON object you get back is a dictionary; eitherIDictionary
orIDictionary<string, object>
. With the latest version for .NET Framework 4, you can also work with aJsonObject
as a dynamic object.我不知道 Jayrock,但如果您想接受 JSON 对象作为 MVC2 中 Action 的参数,最简单的方法是使用 JsonValueProviderFactory 来自 Futures 程序集。
它是 MVC3 中 System.Web.Mvc 的一部分。
I don't know Jayrock, but if you want to accept a JSON object as a parameter of Action in MVC2 than the easiest way to do it is by using JsonValueProviderFactory from Futures assembly.
It's part of System.Web.Mvc in MVC3.