我有一个Linq结果的,我只需要选择Date从DateTime。 我的查询是这样的:
Linq
Date
DateTime
var UserTemplates = (from xx in VDC.SURVEY_TEMPLATE where xx.USER_ID == userid && xx.IS_ACTIVE == 1 select new { xx.TEMPLATE_ID, xx.TEMPLATE_NAME, //CREATED_DATE = xx.CREATED_DATE.Value.Date //CREATED_DATE = EntityFunctions.TruncateTime(xx.CREATED_DATE) xx.CREATED_DATE }).ToList();
那可能吗?任何帮助将不胜感激。
CREATED_DATE - `datetime` datatype
实际上,我将其作为a绑定到控件,DataSource并且该控件同时显示这两个控件Date and Time。但是我只想显示date。
DataSource
Date and Time
date
当我尝试使用时CREATED_DATE = xx.CREATED_DATE.Value.Date,出现类似以下错误:
CREATED_DATE = xx.CREATED_DATE.Value.Date
LINQ to Entities不支持指定的类型成员’Date’。仅支持初始化程序,实体成员和实体导航属性。
如果出于演示目的,则可以使用DataFormatString属性。例如,如果要将数据源绑定到GridView,则可以这样做;
DataFormatString
<asp:BoundField DataField="CREATED_DATE" ... DataFormatString="{0:d}" ../>
另外,您可以使用EntityFunctions.TruncateTime()返回没有日期部分的输入日期。
EntityFunctions.TruncateTime(xx.CREATED_DATE)
您的查询将是;
var UserTemplates = (from xx in VDC.SURVEY_TEMPLATE where xx.USER_ID == userid && xx.IS_ACTIVE == 1 select new { xx.TEMPLATE_ID, xx.TEMPLATE_NAME, EntityFunctions.TruncateTime(xx.CREATED_DATE) //new like }).ToList();