2016-10-06 7 views
1

Я перебираю XmlNodeList и получаю дату создания узлов в строке []. Например:Поиск последней даты в XmlNode с использованием строки []

date[0] = 2016 //year 
date[1] = 07 //month 
date[2] = 23 //day 

Мой вопрос, что будет наиболее эффективным способом сравнения этого string[] других string[], найти который один имеют самую последнюю дату? Я мог бы сделать это с кучей утверждений if, сравнивающих каждый элемент друг с другом, но чувствую, что это не лучшее/самое прекрасное решение. Заранее спасибо.

ответ

1

Вы можете использовать ParseExact, чтобы создать DateTime из string[]. Затем выполните заказ:

List<string[]> data = new List<string[]> 
{ 
    new string[] { "2016", "07", "23" }, 
    new string[] { "2017", "01", "01" } 
}; 

var latestTime = data.OrderByDescending(item => 
         DateTime.ParseExact(string.Join("/", item), @"yyyy/MM/dd", null)) 
        .FirstOrDefault(); 

//latestTime = 1/1/2017