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

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

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

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


当前回答

您可以使用下面的简单代码。

代码:DateTime.Now.ToShortDateString ();

前任。 Console.WriteLine(DateTime.Now.ToShortDateString());

其他回答

如果你想使用绑定,只显示日期部分而不显示时间

ToolTip=“{{Binding TransactionModel.TransactionDate, StringFormat=d}”

如果你想从DateTime中删除部分时间,尝试使用下面的代码:

DateTime dt = new DateTime();

dt = DateTime.Now; //ex: 31/1/2017 6:30:20 PM

TimeSpan remainingTime = new TimeSpan(0, dt.Hour - 5, dt.Minute - 29, dt.Second - 19);
dt=dt.Add(remainingTime);

label1.Text = dt.ToString("HH:mm:ss"); // must be HH not hh

输出:01:01:01

将Date属性添加到DateTime变量

var dateTime = DateTime.Now
var onlyDate = dateTime.Date

或者您也可以使用DataType注释。

[DataType(DataType.Date)]
public DateTime dateTime {get; set;}

DataType注释位于System.ComponentModel.DataAnnotations命名空间内。

这种方法只得到日期而没有时间

DateTime date = DateTime.Now;
string Strdateonly = date.ToString("d");

输出= 5/16/2015

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

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

C#:

DateTime Today = DateTime.Now;

aspx:

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