我想制定一個比較兩種類型的DateTime比較乾淨的方式?對象而無需打擾大量的空檢查。比較DateTime的Date屬性?
下面是一個好主意,或者是有一個更簡單或明智的方式去做;
DateTime? test = DateTime.MinValue;
DateTime? date1 = new DateTime(2008, 6, 1, 7, 47, 0);
if (string.Format("{0:MM/dd/yyyy}", date1) == string.Format("{0:MM/dd/yyyy}", test))
{
Console.WriteLine("They are the same");
}
else
{
Console.WriteLine("They are different");
}
我同意你的方法比我的建議更加靈活和優雅。但是,我主要是在尋找一種易於閱讀和維護的解決方案。我喜歡這種擴展方法的思想,並且它足夠通用,可以被Nullable類型使用,但是,在我的小型項目中,它仍然可能僅用於這個實例。只有一種用法的擴展方法(或投影方法)會被視爲超過工程嗎?我不是有意質疑你的方法,我只是在兩方面思考什麼是最好的。注:我不是說我最好:) – 2012-02-01 03:48:12
@MrMoose:我不確定 - 只是*一個*使用我可能還會提取一個方法,但是它只是*用於比較日期。我絕對要麼做到這一點,要麼與明確的空比較 - 我當然不會使用文本格式。 – 2012-02-01 06:27:22
謝謝。你已經說出了我的AWESOME解決方案。對於我目前的情況,我可能最終會使用bvli的例子(修改爲適合),但我喜歡你的方法。 – 2012-02-01 06:33:19