欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

.net core从windows转linux时间格式的坑

程序员文章站 2022-03-01 15:11:14
...

问题现象:

     原先在windows底下部署执行正常的项目换成linux底下就会报错,后台跟踪发现生成sql语句涉及日期部分的会2021-7-13 下午3:00:47  这样,代码输出当前时间 也是这种格式,会导致数据库插入数据错误

分析: 不是linux时间格式需要调整就是.net core的默认时间格式需要修改,网上搜的一大堆都是json转换的日期格式的,不满足需求

最后多亏参考了 https://blog.csdn.net/shanghaimoon/article/details/116122021

在启动时候添加代码

        public static void Main(string[] args)
        {
            CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("zh-CN", true) { DateTimeFormat = { ShortDatePattern = "yyyy-MM-dd", FullDateTimePattern = "yyyy-MM-dd HH:mm:ss", LongTimePattern = "HH:mm:ss" } };
            CreateHostBuilder(args).Build().Run();
        }

最终解决