Abp 修改默认的日期时间格式

Posted turingguo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Abp 修改默认的日期时间格式相关的知识,希望对你有一定的参考价值。

abp默认是不使用mvc的时间格式,所以直接在AddMvc修改DateFormatString是不会生效的。需要先启用mvc时间格式。Configuration.Modules.AbpAspNetCore().UseMvcDateTimeFormatForAppServices = true;

可以在任意一个项目的module的PreInitialize()方法中配置,不过还是推荐在Host项目或者MVC的module中配置,就是startup设置的DateFormatString在哪个项目就在哪个项目的module中配置。

这个更新是abp 3.8.1之后加的,之前的版本还是得用自定义ContractResolver的丑陋办法

show code

xxWebHostModule.cs

public override void PreInitialize()
{
    Configuration.Modules.AbpWebCommon().MultiTenancy.DomainFormat = _appConfiguration["App:ServerRootAddress"] ?? "http://localhost:22742/";
    Configuration.Modules.AspNetZero().LicenseCode = _appConfiguration["AbpZeroLicenseCode"];
    Configuration.Modules.AbpAspNetCore().UseMvcDateTimeFormatForAppServices = true;//就是这句,使用mvc时间格式
}

需要using Abp.AspNetCore.Configuration;

 

然后是startup.cs

ConfigureServices()方法里第一句

//MVC
            services.AddMvc(options =>
            {
                options.Filters.Add(new CorsAuthorizationFilterFactory(DefaultCorsPolicyName));
            })
            .AddJsonOptions(options => options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss zz")
            .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

重点是.AddJsonOptions(options => options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss zz")

然后随便找个controller写个获取时间的方法

public class DateLocal
    {
        public DateTimeOffset DateTimeOffset { get; set; }

        public DateTime DateTime { get; set; }

        public DateTimeOffset Local { get; set; }
    }
[HttpGet]
        public DateLocal GetLocalTime()
        {
            return new DateLocal
            {
                DateTimeOffset = DateTimeOffset.Now,
                DateTime = DateTime.Now,
                Local = DateTimeOffset.Now.ToLocalTime(),
            };
        }

技术图片

生效

 

以上是关于Abp 修改默认的日期时间格式的主要内容,如果未能解决你的问题,请参考以下文章

怎样修改oracle默认的日期格式

abp 设置默认语言为中文

Abp vNext 修改默认表前缀

如何从我的 DatePicker 片段中传输格式化的日期字符串?

如何更改excel中的默认日期格式

ABP框架源码学习之修改默认数据库表前缀或表名称