hmfl

导航

 

Linq表达式

var startTime = DateTime.Parse(request.StartTime);
var endTime = DateTime.Parse(request.EndTime);

            exp = (t1, t2) => t1.OrderDate >= startTime && t1.OrderDate <= endTime;
            expression = ExpressionHelper.And(expression, exp);

在windows下运行都正常,放到Centos下就异常出错了。

出现错误
从 varchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值。
最后是找了很多文章验证下面这个方式才处理
最终还是打开项目的Program.cs文件

using System.Globalization;

在Main方法中添加下面这行代码解决

CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("zh-CN", true) { DateTimeFormat = { ShortDatePattern = "yyyy-MM-dd", FullDateTimePattern = "yyyy-MM-dd HH:mm:ss", LongTimePattern = "HH:mm:ss" } };

参考:
https://blog.csdn.net/shanghaimoon/article/details/116122021

posted on 2022-02-16 15:14  hmflhmfl  阅读(268)  评论(0编辑  收藏  举报