草庐IT

hal-json

全部标签

c# - 在 C# 中反序列化 JSON 数组(或列表)

基本代码如下:publicstaticstringDeserializeNames(){jsonData="{\"name\":[{\"last\":\"Smith\"},{\"last\":\"Doe\"}]}";JavaScriptSerializerser=newJavaScriptSerializer();nameListmyNames=ser.Deserialize(jsonData);returnser.Serialize(myNames);}//Classdescriptionspublicclassname{publicstringlast{get;set;}}publ

c# - 在 WebAPI 中返回空的 json

当webApi返回null对象时,是否可以返回{}而不是null?这是为了防止我的用户在解析响应时出错。并使响应成为有效的Json响应?我知道我可以在任何地方手动设置它。当响应为null时,应返回一个空的Json对象。但是,有没有办法为每个响应自动执行此操作? 最佳答案 如果您正在构建一个RESTful服务,并且没有从资源中返回任何内容,我相信返回404(NotFound)会更正确比200(OK)用一个空的body回应。 关于c#-在WebAPI中返回空的json,我们在StackOve

c# - 将数组作为 JSON 发布到 MVC Controller

我一直在努力寻找解决这个问题的方法。在我的代码中,我正在构建一个对象数组;var$marks=[];varmark=function(x,y,counter){this.x=x;this.y=y;this.counter=counter;}$marks.push(newmark(1,2,0));$marks.push(newmark(1,2,1));$marks.push(newmark(1,2,2));现在我想将此数据发布到MVCController,所以我认为Controller中的数据类型应该是ListMarks或一组标记。为了发布数据,我试过了;varjson=JSON.str

c# - 使用 Newtonsoft JSON.NET 反序列化动态 Json 字符串

我有一个从FacebookAPI获取的JSON字符串,其中我有一个节点,其名称根据其内容而变化,例如有时是45或58等。它可以是任何数字。我想要它的值(value)。如何获得?示例:{"data":[{"id":"1492292372_10201810786059989","created_time":"2014-04-05T09:00:54+0000"},{"id":"1492292372_10201804679827337","created_time":"2014-04-04T07:29:07+0000"},{"id":"1492292372_10201804649306574"

c# - Json.net 反序列化列表给出重复项

我刚刚开始使用Newtonsoft.Json(Json.net)。在我的第一个简单测试中,我在反序列化通用列表时遇到了问题。在下面的代码示例中,我序列化了一个对象,其中包含三种类型的简单整数列表(属性、成员变量和数组)。生成的json看起来不错(列表被转换为json数组)。但是,当我将json反序列化回相同类型的新对象时,所有列表项都会重复,数组除外。我已经通过第二次序列化来说明这一点。通过四处搜索,我读到反序列化器也填充的列表可能有一个“私有(private)”支持字段。所以我的问题是:在以下情况下是否有一种(最好是简单的)方法来避免重复项?代码usingSystem;usingSy

c# - 无法加载文件或程序集 'Newtonsoft.Json,版本 = 3.5.0.0

我正在使用c#4.0阅读签名请求我正在使用以下代码FacebookAppfap=newFacebookApp();fap.AppId="789485219211963";//AppIDfap.AppSecret="365ee9f5823698536767d608cf572a49";stringrequested_Data=Request.Form["signed_request"];FacebookSignedRequestfsr=fap.ParseSignedRequest(requested_Data);IDictionarymyDic=fsr.Dictionary;stringn

c# - Json.NET StringEnumConverter 未按预期工作

我正在尝试将Json.NET与System.Net.Http.HttpClient一起使用以发送具有枚举属性的对象,但是枚举始终序列化为整数值而不是等效字符串。我已尝试按照此处的说明进行操作:http://james.newtonking.com/archive/2013/05/08/json-net-5-0-release-5-defaultsettings-and-extension-data通过将StringEnumConverter的实例添加到JsonSerializerSettings并尝试使用[JsonProperty(ItemConverterType=typeof(St

c# - 在 C# 中循环遍历 json 数组

我有一个像这样的json字符串,{"objectType":"Subscriber","objectList":[{"firstName":"name1","email":"email@example.com","address":"exampleAddress"},{"firstName":"name2","email":"email2@example.com","address":"exampleAddress2"}]}我需要在我的C#代码中解析它。我试过了,JavaScriptSerializerjson_serializer=newJavaScriptSerializer();

c# - 单击选择性粘贴时如何在 visual studio 2012 中显示 "paste Json class"?

我正在尝试使用vs2012中过去的特殊功能,以便为我的Json数据生成c#类。我从Nuget从NewtonSoft下载了Json.New,然后添加了一个新的.cs类,将我的json数据复制到剪贴板,但是当我转到“编辑”->“选择性粘贴”->我只能看到:“将XML粘贴为类”仅粘贴JsonasClasses功能未显示。有什么建议么?提前谢谢你这就是我得到的,请注意我已经安装了Newtonsoft.Json:(来源:indevcogroup.com) 最佳答案 我创建了一个新项目,安装了Newtonsoft.Json并添加了一个类。如果您

c# - 将 json 反序列化为具有默认私有(private)构造函数的类的 C# 对象

我需要为后续类(class)反序列化json。publicclassTest{publicstringProperty{get;set;}privateTest(){//NOTHINGTOINITIALIZE}publicTest(stringprop){Property=prop;}}我可以像这样创建一个测试实例varinstance=newTest("Instance");考虑我的json类似"{"Property":"Instance"}"我应该如何创建Test类的对象,因为我的默认构造函数是私有(private)的,并且我正在获取Property为NULL的对象我正在使用New