Я заполнил отсортированный список дат (сохраненный в виде строк в формате дд / мм / гггг) из файла XML с использованием xpath.
Однако при запросе списка, чтобы увидеть, существует ли дата в списке, я всегда получаю отрицательный результат (т.е. не существует), даже если у меня есть жесткий код строки запроса, чтобы соответствовать дате в списке.
Однако при сравнении строк в индексе, содержащем запрашиваемую строку, я получаю 0, что означает, что строки идентичны.
Что может вызвать это странное поведение?
В соответствии с указанным здесь кодом
Праздники заселены:
while (iter.MoveNext())
{
XPathNavigator nav2 = iter.Current;
XPathNodeIterator iter2 = nav2.SelectDescendants("date", "", false);
while (iter2.MoveNext())
{
date = iter2.Current.ToString();
holidays.Add(date);
}
}
return holidays;
И поиск:
holidays = list.getHolidays();
if(holidays.BinarySearch(DateTime.Now.ToShortDateString()) > 0)
Со следующим возвращаемым XML:
<date>01/01/2009</date>
<date>25/02/2009</date>
<date>10/04/2009</date>
<date>13/04/2009</date>
<date>04/05/2009</date>
<date>25/05/2009</date>
<date>31/08/2009</date>
<date>25/12/2009</date>
<date>28/12/2009</date>