我遇到了这样的情况,我需要从DateTime中只获取Date。
我有一个Nullable的DateTime? StartDate属性用于保存日期值。
我尝试了下面的方法,
var d = Convert.ToDateTime(StartDate).Date;
但是它返回了如 6/22/2006 12:00:00AM 的d。
将其修改为以下方式后,
var d = Convert.ToDateTime(StartDate).Date.ToString("d");
我能够得到d为6/22/2006。但我不想将我的DateTime?转换为String。
有没有一种方法可以在不使用ToString("d")的情况下仅获取Date?
我有一个Nullable的DateTime? StartDate属性用于保存日期值。
我尝试了下面的方法,
var d = Convert.ToDateTime(StartDate).Date;
但是它返回了如 6/22/2006 12:00:00AM 的d。
将其修改为以下方式后,
var d = Convert.ToDateTime(StartDate).Date.ToString("d");
我能够得到d为6/22/2006。但我不想将我的DateTime?转换为String。
有没有一种方法可以在不使用ToString("d")的情况下仅获取Date?
DateTime
始终具有时间组件,即使Date
属性返回的Date
具有设置为午夜12:00:00的时间。因此,不能获取仅限于Date
的值,除非将其转换为字符串。但是,你为什么会需要它呢? - Tim SchmelterConvert.ToDateTime(StartDate).Date
,而要使用StartDate.Value.Date
。如果StartDate
为null,则两者都会抛出异常,因此您必须确保它不是null。 - Jeppe Stig NielsenDateTime
并简单地忽略时间部分? - Kjartan