我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。

06/26/2009 00:00:00:000

我不能使用任何字符串转换方法,因为我需要对象形式的日期。

我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。


当前回答

自从。net 6 / c# 10以来,你可以这样做:

var dateOnly = DateOnly.FromDateTime(dateTime);

其他回答

在试图解决最初的Q时,偶然发现了这篇文章。

我在用Asp。Net和一些研究之后,我发现当你绑定到代码后面的日期值时,你可以删除时间,这样它就不会显示在屏幕上。

C#:

DateTime Today = DateTime.Now;

aspx:

<%: this.Today.ToShortDateString() %>

在我的经验中,上述解决方案都不起作用,可能是因为我想从数据库中提取的日期中删除时间,但下面的代码工作得很好:

var date = target_date.Value.ToString("dd/MM/yyyy"); 

DateTime。日期

var newDate = DateTime.Now; //newDate.Date property is date portion of DateTime

如果您要将其转换为字符串,您可以轻松地像这样做。

我将date作为DateTime对象。

date.ToString("d");

这只会给你日期。

将变量声明为字符串。

例子:

public string dateOfBirth ;

然后赋值如下:

dateOfBirth = ((DateTime)(datetimevaluefromDB)).ToShortDateString();