IEnumerable в Hashtable
От: Аноним  
Дата: 26.12.05 14:50
Оценка:
Здравствуйте, есть интересующий меня вопрос, по MSDN ответа не нашел, да и в форуме не видел.

есть следующий код, который работает:

Hashtable ht = Hashtable.Synchronized(new Hashtable());
ht.Add(1,1);
foreach(DictionaryEntry de in ht)
   Console.WriteLine(de.ToString());


а вот следующий код не работает:

Hashtable ht = Hashtable.Synchronized(new Hashtable());
ht.Add(1,1);
ICollection col = (ICollection)ht;
foreach(object de in col)
   Console.WriteLine(de.ToString());


первый вариант работает через IDictionaryEntry, а второй через IEnumerable. Если Hashtable поддерживает оба этих интерфейса, то почему второй вариант не работает (он просто не заходит в foreach)?

Заранее благодарен за компетентный ответ.

P.S. Я использую Framework 1.1
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.