2017-09-05 110 views
-1

我在我的表“AbsenteeismDate”(类型=日期)当我想要获取行包含日期它返回0行的列。获取日期没有时间在c#

这是我的C#代码:

DateTime ClassDate = DateTime.Parse(lblDate.Content.ToString()); 
var Abs = dbs.GETAbsenteeisms.Where(a => a.AbsenteeismDate == ClassDate).ToList(); 

我检查有一个问题: “AbsenteeismDate” 数据库和 “ClassDate” 是不相等的。

例如。

AbsenteeismDate=1396-05-31 

ClassDate=1396-05-31 12:00:00 AM 

我怎样才能不日期与时间DateTime类型,因为AbsenteeismDate的类型是迄今为止对我的数据库。

对不起,我不会说英语很好。

+0

[C#字符串转换为日期时间无时间(可能的重复https://stackoverflow.com /问题/ 26207910/C锋利转换字符串到日期时间,没有时间) –

回答

6

一个DateTime总是有一个日期和时间部分,但如果你想获得该日期的DateTime和时间值设置为12:00:00午夜(00:00:00)使用DateTime.Date

var Abs = dbs.GETAbsenteeisms 
    .Where(a => a.AbsenteeismDate == ClassDate.Date) 
    .ToList(); 
0

使用日期属性:

DateTime ClassDate = DateTime.Parse(lblDate.Content.ToString()); 
var date = ClassDate.Date; 

否则,你将不得不转换为字符串作为跟随

var date=ClassDate.ToString("yyyy-MM-dd"); 
0

你只需定义日期时间,但没有时间:

string date = System.DateTime.Now.ToString("yyyy-MM-dd"); 
0

这个工作对我来说:

string a = DateTime.Now.ToShortDateString(); 

ToShortDateString()的电流转换的System.DateTime对象的值到等同的短日期字符串表示。这意味着控制台输出可以是例如2017年1月1日

0

你可以尝试这样的BYT设定日期格式:

DateTime ClassDate = DateTime.Parse(lblDate.Content.ToString(("yyyy-MM-dd")); 
var Abs = dbs.GETAbsenteeisms.Where(a => a.AbsenteeismDate == ClassDate).ToList(); 
相关问题