欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.Net Core基于ABP架構配置To Json序列化

 更新時間:2022年06月15日 09:40:22   作者:springsnow  
這篇文章介紹了ASP.Net Core基于ABP架構配置To Json序列化的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、 前言

我們采用ABP架構用MVC Controller或Web API返回給前端結果ToJson序列化后得到的屬性命名都是采用js的駝峰格式,即首字母小寫,后面單詞首字母大寫的格式(如:后臺屬性名為OrderName,返回的前端js為orderName)。但在實際項目開發(fā)中由于某種原因(比如給老系統(tǒng)提供接口或現(xiàn)有系統(tǒng)集成等)需要采用給后臺屬性名一致或自己特定的格式,下面就介紹一下基于ABP架構ToJson如何修改默認配置和自定義配置。

二、 修改ToJson序列化默認配置

在Startup文件進行默認配置修改,代碼如下:

public class Startup
{
        private readonly IConfigurationRoot _appConfiguration;

        public Startup(IHostingEnvironment env)
        {
            _appConfiguration = env.GetAppConfiguration();
        }

        public IServiceProvider ConfigureServices(IServiceCollection services)
        {
            // MVC
            services.AddMvc()
        .AddJsonOptions(options =>
            {
                //配置tojson格式配置 DefaultContractResolver 為和后臺屬性名保持一致(即:后臺屬性名為OrderName,前端js獲得屬性名也為OrderName)
                options.SerializerSettings.ContractResolver = new DefaultContractResolver();
                //修改為CamelCasePropertyNamesContractResolver,為js的駝峰格式,即abp默認格式(即:后臺屬性名為OrderName,前端js獲得屬性名為orderName)
                //options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
            });
      }
}

三、ToJson序列化自定義配置

如果需要自定義ToJson序列化格式,需要先寫一個子類繼承DefaultContractResolver,重寫ResolvePropertyName方法,代碼如下:

public class MyPropertyNamesContractResolver : DefaultContractResolver
{
        protected override string ResolvePropertyName(string propertyName)
        {
            //屬性名全部返回小寫
            return propertyName .ToLower();
        }
}

再參考第二點在Startup文件將配置替換為MyPropertyNamesContractResolver

services.AddMvc()
.AddJsonOptions(options =>
{
     //配置tojson格式替換為自定義格式 MyPropertyNamesContractResolver (即:后臺屬性名為OrderName,前端js獲得屬性名為ordername)
     options.SerializerSettings.ContractResolver = new MyPropertyNamesContractResolver();
     options.SerializerSettings.DateFormatString = "yyyy'-'MM'-'dd' 'HH':'mm':'ss"; //返回給前臺的JSON數(shù)據(jù)中時間格式去掉T
});

到此這篇關于ASP.Net Core基于ABP架構配置To Json序列化的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論