在微軟的文檔中,有着較為詳細的替換教程
https://docs.microsoft.com/zh-cn/aspnet/core/web-api/advanced/formatting?view=aspnetcore-3.1
但是微軟的文檔並不算太詳細,對於新手而言,着實不算太友好。以下是我基於微軟給出的方案,列出的更為詳盡的方案。
第一步,引入包
第二步,修改sartups.cs中的 ConfigureServices
services.AddControllers() #region newtonsoft .AddNewtonsoftJson(options => { //修改屬性名稱的序列化方式,首字母小寫 options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); //修改時間的序列化方式 options.SerializerSettings.Converters.Add(new IsoDateTimeConverter() { DateTimeFormat = "yyyy/MM/dd HH:mm:ss" }); } ); #endregion
至此,替換步驟結束。
接下來,讓我們看一下是否是真的替換成功。
首先,在控制器里,添加一個get方法,輸出類型為jsonresult
在GetCartInfo方法中,返回類型如下
這是標准的C#命名方式,而我們前面配置的newtonsoft中,將屬性首字母設置為了小寫
接下來運行項目,使用postman測試接口,測試結果如下:
可以發現,接收到的json數據中,所有名稱都是小寫開頭,說明我們前面的配置已經生效。
至此,替換成功。