如何使用DbFunction减去小时数?
我正在使用.Net framework 4.5和Entity Framework 6.0
这是我写的代码。
var _temp = (from x in context.LOG_ACTIVITIES
...
select new
{
RECEIVED_DATE = DbFunctions.AddHours(x.RECEIVED_DATE, -8),
...
}
);
这里引发了异常消息。
SqlDbType.Time溢出。价值' -08:00:00'超出范围。一定是 在00:00:00.0000000和23:59:59.9999999之间。
任何帮助将不胜感激。 TIA!
答案 0 :(得分:-1)
错误消息很明确。函数的结果是负数和数据类型" SqlDbType.Time"无法处理。你需要使用另一种数据类型(如果可以,我不知道)。或者您需要检查有效输入(如果" RECEIVED_DATE"大于" 8小时")并且如果结果值有效则返回标志。对于无效结果,您可以使用" NULL"。