2016-10-02 14 views
1

我收藏如何獲得最新的DATETIME在我的收藏

"10/01/2016 4:00 PM" 
"10/01/2016 11:00 AM" 
"10/01/2016 12:00 PM" 

我想:「2016年10月1日4:00 PM」,因爲它是當前的時間和最新的。但是,當我使用.Max()函數時,它返回「10/01/2016 12:00 PM」的值,這意味着它只是尋找HOURS「12」的最高值。

+0

感謝編輯。我是新來的。 –

+1

請發表您如何初始化您的收藏,因爲如果它是'DateTime's它應該工作正常 –

+0

否先生。當我降序排序從最高到最低這不是我想要的。我想要的排序應該是這樣的: 「2016/10/01 4:00 PM」 「2016/10/01 12:00」 「2016/10/01 11:00」 或正在使用。 Max()函數我想得到下午4點 –

回答

1

你比較string值。

您需要將字符串集合轉換到集合的DateTime

var dateTimeCollection = stringCollection.Select(value => DateTime.Parse(value)); 

然後用Max方法

var maxDate = dateTimeCollection.Max(); 
+0

sry這是正確的:)。然而它是否正確? collection.Max(Value => DateTime.Parse(Value.Date)); ? –

0

你使用哪種收藏?我曾與下面的代碼

static void Main(string[] args) 
     { 
      List<DateTime> list = new List<DateTime>() 
      { 
       DateTime.Parse("10/01/2016 4:00 PM") , 
       DateTime.Parse("10/01/2016 11:00 AM"), 
       DateTime.Parse("10/01/2016 12:00 PM") 
      }; 

      Console.WriteLine(list.Max()); 
      Console.ReadKey(); 
     } 

testet,它工作

+0

其工作現在感謝您的所有幫助:) –

+0

這是不正確的答案 – Fabio

+0

是的你的答案是正確的,謝謝@Fabio我不再困惑:) –

相關問題