我正在尝试使用六参数函数CreateDateTime
创建一个表达式调用,在表达式中我是初学者,有人帮忙吗? THKS。
以下是我想要的结果
m => m.OpenDate >= EntityFunctions.CreateDateTime(2012, 12, 22, 0, 0, 0)
当我尝试写这个但总会出现异常。
Expression.Call(typeof(EntityFunctions), "CreateDateTime",
new Type[]
{
typeof(int?), typeof(int?), typeof(int?),
typeof(int?), typeof(int?), typeof(double?)
},
new Expression[]
{
Expression.Constant(2012),
Expression.Constant(12),
Expression.Constant(22),
Expression.Constant(0),
Expression.Constant(0),
Expression.Constant(0.0)
}
);
答案 0 :(得分:0)
DateTime
类已经有一个构造函数,它使用这些参数来创建一个DateTime
对象。
答案 1 :(得分:0)
这里可以解决它
Expression.Call(typeof(EntityFunctions), "CreateDateTime",
new Type[]
{
typeof(int?), typeof(int?), typeof(int?),
typeof(int?), typeof(int?), typeof(double?)
},
new Expression[]
{
Expression.Convert(Expression.Constant(2012),typeof(int?)),
Expression.Convert(Expression.Constant(12),typeof(int?)),
Expression.Convert(Expression.Constant(22),typeof(int?)),
Expression.Convert(Expression.Constant(0),typeof(int?)),
Expression.Convert(Expression.Constant(0),typeof(int?)),
Expression.Convert(Expression.Constant(0.0),typeof(double?)),
}
);