[英]Format nullable DateTime in C#
我試圖從可為空的DateTime
對象中僅獲取日期部分。 我試過這個東西
string dueDate = siteRow.DueDate.ToString(cultureInfo.DateTimeFormat.ShortDatePattern)
但它拋出錯誤:
錯誤 CS1501 方法“ToString”沒有重載需要 1 個參數
在上面的siteRow.DueDate
是一個 DateTime 對象。 我無法弄清楚正確的語法。 請幫我解決這個問題。
Nullable<T>
是包裝 T 類型的通用包裝器
它有兩個屬性:Value 和 HasValue。 Value 是包裝對象的值,HasValue 是一個布爾值,指示是否在 Value 屬性中獲取值。 如果 HasValue 為 true,則 Value 將不是默認值(通常為 null 或空結構)。 如果 HasValue 為 false,則 Value 將是默認值。
所以要訪問 DateTime 的 ToString 方法,您需要調用DueDate.Value.ToString
將是
var dueDate = siteRow.DueDate.HasValue ? siteRow.DueDate.Value.ToString(cultureInfo.DateTimeFormat.ShortDatePattern) : null
或使用縮寫語法
var dueDate = siteRow.DueDate?.ToString(cultureInfo.DateTimeFormat.ShortDatePattern);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.