从DateTime对象中删除时间

时间:2017-07-07 09:51:40

标签: c# datetime datetime-format

我有一个Datetime对象,我想删除它的时间部分。我尝试了以下代码行,但auth.dob仍包含time。我怎样才能在其中设置2017-01-01

auth.dob = Convert.ToDateTime("2017-01-01").Date;

1 个答案:

答案 0 :(得分:3)

可悲的是.Net不包含仅存储日期的类型。通常我们使用DateTime并将时间设置为午夜。然后,当您输出该值时,您只需在显示时省略时间,请参阅DateTime.ToString(string)DateTime.ToShortDateString()DateTime.ToLongDateString()

虽然这有效,但确实会引起各种混乱。我经常觉得最好有一个Date结构,一个Time结构和一个DateTime结构,它是另外两个结构的组合。但遗憾的是情况并非如此。

Noda Time库,但在这种情况下可能有点过分了。

或者,您可以自己角色并将日,月和年存储为单独的数字变量。