草庐IT

json-iterator

全部标签

使用 Json.Net : Error converting value to type 的 C# 枚举反序列化

我正在使用Json.NET序列化/反序列化一些JSONAPI。API响应有一些整数值映射到应用程序中定义的枚举。枚举是这样的:publicenumMyEnum{Type1,Type2,Type3}并且JSONAPI响应具有以下内容:{"Name":"abc","MyEnumValue":"Type1"}有时,API会为我的枚举中未定义的MyEnumValue字段返回一个值,如下所示:{"Name":"abc","MyEnumValue":"Type4"}抛出异常:Errorconvertingvalue"Type4"totype'MyEnum'有没有办法通过分配默认值或其他方法来避免应

c# - 使用 json.net 在序列化期间合并两个对象?

我遇到了如下情况,谁能帮我实现一下?例如,如果我有类(class):-publicclassSample{publicStringname{get;set;}publicMyClassmyclass{get;set;}}我的Myclass将如下所示:publicclassMyClass{publicStringp1{get;set;}publicStringp2{get;set;}}当我使用Json.net序列化Sample类的对象时,我得到如下结果并且运行良好。{"name":"...","myclass":{"p1":"...","p2":"..."}}它是正确的,但我想知道是否可

c# - .Net 4.5 中有什么新内容可以更好地处理 JSON 吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。在.NET4.5和VS2012中有什么新的JSON处理比DataContractJsonSerializer更好吗?我看过一些关于System.JSON的东西。但是更好吗?我知道也有JSON.NET,但我不确定是否允许我将另一个.dll添加到我的项目中。

c# - Elmah:如何从错误报告中获取 JSON HTTP 请求正文

我正在使用Elmah记录异常。如果请求是基于表单的请求(即Content-Type:application/x-www-form-urlencoded),Elmah非常擅长记录请求主体,但是对于内容类型为application/json的基于JSON的请求,请求主体在错误报告中无处可寻。任何人都知道我在哪里可以找到这个请求主体,以便我可以正确诊断我的异常?更新:2012-01-03为了澄清我所说的基于JSON的请求的含义,下面是一个以JSON作为请求主体的原始HTTP请求示例:PUThttp://mycompany.com/api/v1.0/meHTTP/1.1Host:mycompa

c# - 为什么当我使用 JSON.NET 反序列化时会忽略我的默认值?

我使用JSON.NET作为我的主要序列化器。这是我的模型,看我设置了一些JSONProperties和一个DefaultValue.publicclassAssignmentContentItem{[JsonProperty("Id")]publicstringId{get;set;}[JsonProperty("Qty")][DefaultValue(1)]publicintQuantity{get;set;}}当我序列化List时,它做得很好:privatestaticJsonSerializerSettingss=newJsonSerializerSettings{Default

c# - 如何安全地将包含转义 JSON 的字符串转换为有效的 JSON?

我正在与返回JSON响应的第三方API通信,如下所示:"{\"SomeResponse\":{\"FIrstAttribute\":8,\"SecondAttribute\":\"On\",\"ThirdAttribute\":{\"Id\":2,\"FirstName\":\"Okkie\",\"Name\":\"Bokkie\",\"Street\":\"\",\"StreetNumber\":null,\"PostCode\":\"\",\"City\":\"\",\"Country\":\"}}}"它是一种JSON...但作为字符串。请注意第一个和结尾的双引号,当然还有所有转义

c# - 如何使用 JSON.net 解析 JSON 文件

我正在尝试读取JSON文件并对其进行解析。我有这段代码可以从我的文件中读取StreamReaderre=newStreamReader("artists.json");JsonTextReaderreader=newJsonTextReader(re);但是我现在如何从阅读器解析它以便我可以从文件中搜索数据?我尝试阅读documentation但找不到任何东西 最佳答案 usingNewtonsoft.Json;//..JsonSerializerse=newJsonSerializer();objectparsedData=se.

c# - 具有内部属性的 JSON Serializer 对象

我有一些内部属性的类,我也想将它们序列化为json。我怎样才能做到这一点?例如publicclassFoo{internalintnum1{get;set;}internaldoublenum2{get;set;}publicstringDescription{get;set;}publicoverridestringToString(){if(!string.IsNullOrEmpty(Description))returnDescription;returnbase.ToString();}}使用保存Foof=newFoo();f.Description="FooExample";

c# - Newtonsoft Json 将字典反序列化为 DataContractJsonSerializer 中的键/值列表

我有一个用DataContractJsonSerializer序列化到存储的字典,我想用Newtonsoft.Json反序列化它。DataContractJsonSerializer已将字典序列化为键/值对列表:{"Dict":[{"Key":"Key1","Value":"Val1"},{"Key":"Key2","Value":"Val2"}]}我可以给JsonConvert.DeserializeObject()一些很酷的选择吗?这将使它同时支持该数据格式和Newtonsoft.Json的格式?{"Dict":{"Key1":"Val1","Key2":"Val2"}}是Newt

c# - 使用 Web API 和 JSON.NET 序列化对象时防止 $id/$ref

我似乎无法阻止WebAPI/JSON.NET在序列化对象时使用Newtonsoft.Json.PreserveReferencesHandling.Objects。换句话说,尽管使用了以下设置,但$id/$ref始终在序列化对象中使用:publicclassMvcApplication:System.Web.HttpApplication{protectedvoidApplication_Start(){WebApiConfig.Register(GlobalConfiguration.Configuration);}}publicstaticclassWebApiConfig{pub