Json格式化处理碰到的问题
用户需要一个网页的查询数据的工具。之前写有一个查询界面,Web化一下而已,没有困难。正以为要收工时,页面不显示数据!查询数据库返回的数据是没有问题的。又是一个烧脑的问题。
总结一下,
1 Json格式是标准的,通用的数据表达形式,不同的框架,不同的开发工具对JSON格式的处理却是多样性的,如net framework4.5与net core 8就是不同的。net 也有各种应对的方案,只是要找各种资料学习,还要一个一个测试效果。JSON是标准,为什么不统一格式化工具呢。
2 net core中会自动把变量名全部小写处理,这个原因找出来费了几个小时!(U9的接口应用了也有这样的奇葩,定义时要首字母大写,调用时却要变成小写才能成功的。)
相关的脚本附上备查。从代码上看,是二种组件的冲突造成的,System.Text.Json和Newtonsoft.Json有不同。强制指明一下就可以了。
var result = new
{
code = 0,
msg = "success",
count = totalCount,
data = pagedData
};
string json = System.Text.Json.JsonSerializer.Serialize(result, new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
WriteIndented = false
});
return Content(json, "application/json");