目的
序列化時不自動將非ASCII轉為Unicode
建立新專案
選擇ASP.NET Core Web API專案範本,並執行下一步
設定新的專案
命名你的專案名稱,並選擇專案要存放的位置。
其他資訊
直接進行下一步
編輯WeatherForecastController檔案
將預設的API註解,寫入新的Action,預設不會引用System.Text.Json,記得在最上面using
[HttpGet("JsonSerialize")]
public ActionResult JsonSerialize() {
var options = new JsonSerializerOptions {
//美化輸出,會有空白字元
WriteIndented = true,
//將所有語言都不進行轉換
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All)
};
var Test = new TestClass() {
Name = "中文名",
Age = 18,
};
var Result = JsonSerializer.Serialize(Test, options);
return Ok(Result);
}
public class TestClass {
public string Name { get; set; }
public int Age { get; set; }
}
執行結果
中文就不會是unicode了
參考
How to serialize and deserialize