asp.net-mvc – EntityFunctions.CreateDateTime问题与linq到实
发布时间:2020-12-16 03:21:13 所属栏目:asp.Net 来源:网络整理
导读:当我的数据库中有闰年时(例如:2012年2月29日). EntityFunctions.CreateDateTime函数抛出System.Data.SqlClient.SqlException:从字符串转换日期和/或时间时转换失败. 我的代码在我的asp.net mvc(C#)应用程序中如下: from u in _entities.tt_Userslet _star
当我的数据库中有闰年时(例如:2012年2月29日). EntityFunctions.CreateDateTime函数抛出System.Data.SqlClient.SqlException:从字符串转换日期和/或时间时转换失败.
我的代码在我的asp.net mvc(C#)应用程序中如下: from u in _entities.tt_Users let _start_date = u.Start_Date let _startDate = _start_date.Day let _startmonth = _start_date.Month let _startyear = _start_date.Year let _starthour = u.Start_Time.Value.Hours let _startminutes = u.Start_Time.Value.Minutes let _startseconds = u.Start_Time.Value.Seconds let _startDateWithTime = EntityFunctions.CreateDateTime(_startyear,_startmonth,_startDate,_starthour,_startminutes,_startseconds) let _startDateWithZeroTime = EntityFunctions.CreateDateTime(_startyear,0) let _start_datetime = u.Is_Include_Time ? _startDateWithZeroTime : _startDateWithTime let _end_date = u.End_Date let _endDate = _end_date.Day let _endmonth = _end_date.Month let _endyear = _end_date.Year let _endhour = u.End_Time.Value.Hours let _endminutes = u.End_Time.Value.Minutes let _endseconds = u.End_Time.Value.Seconds let _endDateWithTime = EntityFunctions.CreateDateTime(_endyear,_endmonth,_endDate,_endhour,_endminutes,_endseconds) let _endDateWithZeroTime = EntityFunctions.CreateDateTime(_endyear,0) let _end_datetime = u.Is_Include_Time ? _endDateWithZeroTime : _endDateWithTime let _cur_Start_date = u.Is_Include_Time ? _userStartDate : _gMTStartDate let _cur_End_date = u.Is_Include_Time ? _userEndDate : _gMTEndDate where u.User_Id == 1 && !u.Is_Deleted && _start_datetime >= _cur_Start_date && _end_datetime <= _cur_End_date select new { u.User_id,u.User_Name,u.Login_Name,u.Email_Address }; 这里_userStartDate,_userEndDate,_gMTStartDate和_gMTEndDate是我函数的参数. 如果列“Is_Include_Time”为true,那么我还必须从表中包含TimeSpan.但是对于闰年它抛出的错误. 有什么建议? 解决方法
我刚遇到同样的问题.我在数据库行中有一些值,我需要转换为日期时间.我发现我可以使用以下构造:
DateTime startDate = new DateTime(1,1,1); var counters = from counter in entities.Counter let date = SqlFunctions.DateAdd("day",counter.DayOfMonth-1,SqlFunctions.DateAdd("month",counter.Month-1,SqlFunctions.DateAdd("year",counter.Year-1,startDate))) where date >= dateFrom && date <= dateTo orderby date select new { Value = counter.CounterValue,Date = date }; 我不确定性能影响,但确实有效. 最好的祝福,托尔 – 奇 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 如何处理@RenderBody()?
- asp.net – IE10条件IE注释<! - >功能启用程序
- asp.net-mvc-3 – 为什么在MVC3中建议使用automapper来映射
- entity-framework – 实体框架Add-Migration失败,出现“找不
- .net – Structuremap – 多个接口实现
- ASP.NET Page_Init被解雇了两次!
- QueryString与ASP.NET MVC 6锚点标签助手
- SignalR控制台自托管服务端向web客户端指定用户推送数据,客
- asp.net – IIS 7如何使用数据库中的用户帐户映射客户端证书
- asp.net – 模型在表单发布到控制器时始终为NULL
推荐文章
站长推荐
- asp.net-core-mvc – 如何从任何ASP .Net Core类
- asp.net-mvc – AppHarbor的反向代理导致SSL和ap
- asp.net – 命名空间’x’已包含’y’的定义
- 如何将ASP.NET下拉列表DataTextField属性绑定到嵌
- 经典ASP亚马逊s3休闲授权
- asp.net – $.post vs $.ajax
- asp.net-mvc-2 – 将模型数据传递给外部javascri
- asp.net-mvc – “test”服务器中的ASP.NET MVC运
- asp.net-mvc – 如何在.net mvc中使用私有操作方
- asp.net-mvc – ASP.NET MVC(4) – 按特定顺序绑
热点阅读