【发布时间】:2017-08-03 15:57:48
【问题描述】:
我有一个视图 (vw_users) 和一个表 (CTUsers)。当我从视图中请求数据时,我的 sql 查询曾经正常工作:
var result = (from i in dc.vw_Users
where i.CTid == ctid
select new
{
UserId = i.UserId,
WelcomeSent = (i.WelcomeSent != null && i.WelcomeSent.ToString().Length > 0
? DateTime.Parse(i.WelcomeSent.ToString())
: new DateTime())
});
但现在我想从表中获取 WelcomeSent,所以我使用以下代码:
var result = (from i in dc.vw_Users
join k in dc.CTUsers
on i.CTid equals k.CTid
where i.CTid == ctid
select new
{
UserId = i.UserId,
WelcomeSent = (k.WelcomeSent != null && k.WelcomeSent.ToString().Length > 0
? DateTime.Parse(k.WelcomeSent.ToString())
: new DateTime())
}).Distinct();
但是现在当我运行这个查询时,我得到了这个错误:
SqlDateTime 溢出。必须在 1753 年 1 月 1 日凌晨 12:00:00 到 12/31/9999 晚上 11:59:59
SQL 视图和表 WelcomeSent 类型为 DateTime,也可以为 NULL。这是 WelcomeSent 的示例值:2017-03-07 00:00:00.000
【问题讨论】:
-
你知道visual studio支持多行吗?!
-
我不明白这条评论的相关性
-
稍微格式化您的代码将帮助您获得答案。对于任何回答者来说,阅读关于完全未知问题的 879 字符行都非常困难。上面的评论真的很相关。
-
我几乎想花时间格式化它,但它太多了
-
然后把空的new DateTime改成new DateTime(1753,1,1)