2010-11-30 59 views
5

无论时间是什么时候,我如何保存日期时间,没有时间或最好是12:00的时间戳?如何保存日期时间没有时间?

我不想使用.ToString("dd/MM/yyyy");,因为它会打开一大堆新的可能的错误。

+1

如果你想保存日期?在数据库中?或Datetime类型的对象? – Shekhar 2010-11-30 11:04:58

+0

到数据库。 – Willem 2010-11-30 11:11:49

+0

时间可以在代码,持久层或数据库中剥离,哪个地方对于您正在尝试解决的问题来说看起来最自然? – 2010-11-30 11:15:35

回答

14

DateTime结构有一个Date属性,应该满足您的需求:

DateTime dateOnly = dateTime.Date; 

当然,它仍然会不可避免地含有时间部分,但你应该能够忽略它。

1

使用

DateTime.Now.Date 

或指明MyDate:

myDate.Date 
1

如果您有任何日期

DateTime anyDate = DateTime.Now; 
DateTime dateAtNoon = anyDate.Date.AddHours(12); 

,或者如果你想今天你可以使用快捷

DateTime dateAtNoon = DateTime.Today.AddHours(12); 
1

这将这样的伎俩有优先ts.Date

var ts = DateTime.Now; 
var dateAtMidnight = ts.Date; 
var dateAtNoon = ts.Date.AddHours(12); 
2

正如其他海报说的

DateTime.Now.Date 

是要走的路。但是,也值得考虑是否要删除时区信息以防止客户端/服务器计算机上不同TZ发生问题。

您可以使用

var dateTime = new DateTime(DateTime.Now.Date.Ticks, DateTimeKind.Unspecified); 
相关问题