如何将 DateTime 字符串转换为 DateTime 时分秒?

How do I convert DateTime String to DateTime Hours Minutes Seconds?

我有这个代码:

stringBuilder2.Append(this.L("PrintEmail_InvoiceDate") + " " + 
    (invoice.Date.HasValue 
         ? DateTime.Parse(invoice.Date.ToString()).ToShortDateString() 
         : ""));

这样输出我的发票日期:6/19/2017

我需要相同的代码来输出这样的发票日期:6/19/2017 12:00:00 AM

我该怎么做?谢谢!

试试这个:

 stringBuilder2.Append(this.L("PrintEmail_InvoiceDate") + " " + 
        (invoice.Date.HasValue 
             ? DateTime.Parse(invoice.Date.ToString()).ToString("G") 
             : ""));

ToString() 中的格式说明符 "G" 将输出 mm/dd/yyyy hh:mm:ss (am/pm)

为什么要使用 .ToShortDateString()

删除它,你会看到它有效。

工作示例:https://dotnetfiddle.net/gKWAzl

stringBuilder2.Append(this.L("PrintEmail_InvoiceDate") + " " + 
        (invoice.Date.HasValue 
             ? invoice.Date.Value.ToString("M/d/yyyy hh:mm:ss tt")
             : ""));

希望对你有用。