我正在通过ASP.NET Core / Web API / Angular
2上的WintellectNOW课程进行学习。我已经实现了API部分,但是由于某种原因,返回的JSON的变量名都是小写的。
返回的JSON格式如下:
[
{"id":1,"name":"Bowler","color":"black","count":1},
{"id":2,"name":"Fedora","color":"red","count":1},
{"id":3,"name":"Baseball Cap","color":"blue","count":3}
]
我期待着…
[
{"Id":1,"Name":"Bowler","Color":"black","Count":1},
{"Id":2,"Name":"Fedora","Color":"red","Count":1},
{"Id":3,"Name":"Baseball Cap","Color":"blue","Count":3}
]
基于…的C#模型
namespace HatCollection.Models
{
public class Hat
{
public int Id { get; set; }
public string Name { get; set; }
public string Color { get; set; }
public int Count { get; set; }
}
}
我什至甚至[DataMember(Name = "Id")]
只是为了确定装饰属性而已,仍然没有关系。
在偶然的机会上,它与控制器中的Action和instance变量有关。
private static readonly List<Hat> MyHats = new List<Hat>
{
new Hat {Id = 1, Name = "Bowler", Color = "black", Count = 1 },
new Hat {Id = 2, Name = "Fedora", Color = "red", Count = 1 },
new Hat {Id = 3, Name = "Baseball Cap", Color = "blue", Count = 3 }
};
[HttpGet]
public IEnumerable<Hat> Get()
{
return MyHats;
}
如何关闭camelCase功能,以便ASP.NET Core返回属性名称而不更改它们?
在ASP.NET Core
<3.0中,默认情况下(根据此声明)驼峰式存储JSON属性。
您可以通过替换来禁用此功能
services.AddMvc();
与
services
.AddMvc()
.AddJsonOptions(opt => opt.SerializerSettings.ContractResolver
= new DefaultContractResolver());
在您的Startup.cs文件中。您必须将其添加using Newtonsoft.Json.Serialization;
到文件的顶部。
随着DefaultContractResolver
到位,属性名称将在JSON输出表示一字不差。不需要DataMember
属性。
问题内容: 我有一个页面作为HtmlUnit中的UnexpectedPage返回,响应为JSON。我可以使用HTMLUnit进行解析还是需要一个额外的库? 问题答案: HtmlUnit不支持它。它最多可以执行JS函数。您需要事先检查返回的响应是否匹配,然后使用合适的工具进行解析。Google Gson 在此方面很有用。 如果JSON结构是事先已知的,则您甚至可以使用Gson将其转换为完全有价值的J
下面是一个json响应的示例。正如您所看到的,像:news、number_likes、number_comment、number_post、user和owner这样的字段总是存在。但是像:place、place_mark、comment、album、photo这样的字段并不总是存在。这取决于新闻的类型。 请帮帮我!为了正确的json反序列化,我需要做什么?也许有人有经验,在编写自定义转炉工厂或可以
问题内容: 对不起,我的英语不好 :) 我在iOS应用程序的Swift中通过Alamofire解析JSON响应时遇到问题。我编写了一个函数来返回JSON响应字符串。请求和响应处理我做Alamofire和JSON处理我做SwiftyJSON。首先,我声明一个名为 jsonString的变量 ,其值为 test 。然后,我向REST服务发出请求,并通过单击按钮获得JSON响应。我想使用函数 ping(
问题内容: 我在弄清楚如何从jQuery $ .post()请求中正确读取JSON响应时遇到了麻烦。 在下面的jQuery代码中,我根据对应的“ color_entry_id”(用作键)从DOM中的元素填充字符串的关联数组: 然后,我发出POST请求,发送“ image_links”数组: 另外,如上所示,我尝试遍历响应数组并输出要成为字符串的每个项目,但是我只得到“ [object Object
问题内容: 我正在读取Gson的JSON响应,该响应返回somtimes a,因为期望值设置为空字符串。现在,我想知道处理这种异常的最佳方法是什么。如果该值为空字符串,则反序列化应为0。 预期的JSON响应: 但是有时运行时是一个空字符串: java类如下所示: 反序列化是这样的: 因为返回一个空String而不是一个int值,所以抛出a 。 有没有办法告诉Gson:“ 如果反序列化Type 的字
问题内容: 我看了其他几个问题,但我仍然不完全理解。我想将JSON字符串发布到远程地址,然后从JSON响应中检索值。我正在使用Java的Apache库。 作为主体,我将通过以下示例(): 我也完全不知道如何从响应中检索JSON值。 问题答案: 最简单的方法是使用类似google-http-java-client之类的库,但是如果您想自己解析JSON响应,则可以通过多种方式进行,您可以使用org.j