namespace:System.Text.Json
抽象类,用于提供Json转换时的输出格式
namespace System.Text.Json { public abstract class JsonNamingPolicy { protected JsonNamingPolicy(); public static JsonNamingPolicy CamelCase { get; } public abstract string ConvertName(string name); } }
默认的Policy为CamelCase,即驼峰式
通过继承JsonNamingPolicy创建自定义的JSON转换策略
MSDN给出的示例:
public class UpperCaseNamingPolicy : JsonNamingPolicy { public override string ConvertName(string name) => name.ToUpper(); }
重写CovertName方法,转化JSON字符串时输出全大写,作用与对象的属性名
var options = new JsonSerializerOptions { PropertyNamingPolicy = new UpperCaseNamingPolicy(), WriteIndented = true }; jsonString = JsonSerializer.Serialize(weatherForecast, options);