草庐IT

json-iterator

全部标签

c# - 如何强制 Newtonsoft Json 序列化所有属性? (具有 "Specified"属性的奇怪行为)

各位程序员,我在Newtonsoft.Json中遇到了一个奇怪的行为。当我尝试序列化一个如下所示的对象时:publicclassDMSDocWorkflowI{[JsonProperty("DMSDocWorkflowIResult")]publicboolDMSDocWorkflowIResult{get;set;}[JsonProperty("DMSDocWorkflowIResultSpecified")]publicboolDMSDocWorkflowIResultSpecified{get;set;}}使用这个没有自定义转换器/绑定(bind)器/契约解析器的简单调用:var

c# - 设置 Asp.Net Core MVC Json 选项

我的项目中有一个名为AC的类,它有一个类型为IPEndPoint的属性Address。这种类型以及IPAddress因默认情况下无法序列化为JSON而臭名昭著。由于我需要序列化我的类,我实现了两个自定义转换器:IPAddressConverter和IPEndPointConverter。为了让Newtonsoft使用这两个转换器,我创建了这个类:publicsealedclassCustomSettings:JsonSerializerSettings{publicCustomSettings():base(){this.Converters.Add(newIPAddressConve

c# - 如何在 C# MVC Controller 操作中将动态对象序列化为 JSON?

我想将动态对象序列化为JSON。我尝试使用ExpandoObject,但结果不是我需要的:publicJsonResultEdit(){dynamico=newExpandoObject();((IDictionary)o)["abc"]="ABC";//oro.abc="ABC";returnJson(o);}我希望JSON看起来像:{"abc":"ABC"}但它看起来像[{"Key":"abc","Value":"ABC"}]显然ExpandoObject不行,但是我可以继承DynamicObject并以某种方式覆盖它的方法来实现我想要的JSON格式吗?

c# - 将 JSON 反序列化为多个属性

我正在针对返回JSON数据的第三方API进行编程,但格式可能有点奇怪。某些属性可以是一个对象(包含一个Id属性),也可以是一个字符串(它是对象的ID)。例如,以下两个都是有效的:{ChildObject:'childobjectkey1'}和{ChildObject:{Id:'childobjectkey1',//(otherproperties)}}我正在尝试使用JSON.net将其反序列化为强类型类,但到目前为止运气不佳。我最好的想法是将它序列化为两个属性,一个是字符串,另一个是对象,并为每个属性使用自定义JsonConverter以允许可变行为:publicabstractcla

c# - ASP.NET MVC 6 上每个 Controller 的特定 JSON 设置

我的ASP.NETMVC6webApi中的每个Controller都需要特定的JSON设置。我发现这个示例适用于(我希望!)适用于MVC5:ForceCamelCaseonASP.NETWebAPIPerControllerusingSystem;usingSystem.Linq;usingSystem.Web.Http.Controllers;usingSystem.Net.Http.Formatting;usingNewtonsoft.Json.Serialization;publicclassCamelCaseControllerConfigAttribute:Attribute

c# - 包含循环,如果引用跟踪被禁用,则无法序列化,json.net 和 webapi

我收到错误:Objectgraphfortype'System.Collections.Generic.List`1[[Proj.Model.Prom,Proj.Model,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null]]'containscyclesandcannotbeserializedifreferencetrackingisdisabled.阅读有关内容,似乎是序列化程序,但Json.Net声称是解决方案,我已经阅读了WebApi和Framework4.5默认情况下具有它。那么它是默认出现的吗?如果是这样,为什么我仍然

c# - 使用 JSON.NET 解析 JSON 对象流的正确方法是什么?

我有一个JSON对象流,看起来有点像这样:{...}{...}{...}{...}...所以基本上是一个没有任何分隔符的JSON对象的串联列表。将这些反序列化为IEnumerable的正确方法是什么?使用JSON.NET?此刻我尝试了类似的东西varserializer=newJsonSerializer();serializer.CheckAdditionalContent=false;using(varreader=newStreamReader(stream))using(varjsonReader=newJsonTextReader(reader)){reader.Suppor

c# - 使用自动修剪字符串反序列化 json

我使用Newtonsoft.Json库有没有办法在反序列化期间从任何字符串数据中修剪空格?classProgram{classPerson{[JsonProperty("name")]publicstringName;}staticvoidMain(string[]args){varp=JsonConvert.DeserializeObject(@"{name:""John""}");Console.WriteLine("Nameis:\"{0}\"",p.Name);}}添加:最后,我得到了自定义转换器的解决方案。不好,但比使用Trim()的属性更好。如果有人有任何想法如何以更自然的

c# - Iterating Over ConcurrentDictionary 只读时,ConcurrentDictionary 是否被锁定?

我在我的网络应用程序中创建了一个ConcurrrentDictionary作为应用程序对象。它在session之间共享。(基本上用作存储库。)有时,任何可用的session都会将新项目添加到字典中。仅允许管理员查看现在,我想允许管理员列出字典中的所有值,但管理员不会添加或删除项目,相反我只会提供一种方式让管理员查看通过遍历项目来读取集合中的项目。(伪)代码看起来像这样:foreach(vareinEmployeeCache.Instance.AllEmployees){Console.WriteLine(e.Key);}我的问题是:如果我遍历项目,ConcurrentDictionar

c# - 使用 Newtonsoft.Json 反序列化 DbGeometry

我正在按照JohnPapa在其最新的PluralSight类(class)中概述的方法使用Angular、Breeze和WebAPI2构建SPA。一切正常,我可以将信息提取、更新、插入、删除回服务器。但是,我使用的是空间类型,当我尝试使用空间类型更新实体时,出现以下错误Anexceptionoftype'Newtonsoft.Json.JsonSerializationException'occurredinNewtonsoft.Json.dllbutwasnothandledinusercodeAdditionalinformation:Errorgettingvaluefrom'W