No DateTime?.ToString(string) overload?

前端 未结 3 869
别跟我提以往
别跟我提以往 2020-12-18 01:29

I am aware of the standard procedure for displaying a DateTime in a custom format, like so:

MessageBox.Show(dateSent.ToString(\"dd/MM/yyyy hh:mm:s

3条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-18 01:54

    Instead of having to manually perform a null check every time, you can write an extension method.

     public static string ToStringFormat(this DateTime? dt, string format)
     {
          if(dt.HasValue) 
             return dt.Value.ToString(format);
          else
             return "";
     }
    

    And use it like this (with whatever string format you want)

     Console.WriteLine(myNullableDateTime.ToStringFormat("dd/MM/yyyy hh:mm:ss"));
    

提交回复
热议问题