Ответ 1
StringDictionary
происходит от .Net 1, который предшествует дженерикам.
Поэтому, в отличие от Dictionary<String, String>
, он не реализует никаких общих интерфейсов, поэтому его нельзя использовать с LINQ (если вы не Cast()
)
Кроме того, StringDictionary
нормализует все клавиши в нижнем регистре.
(Чтобы сделать нечувствительность к регистру Dictionary<String, String>
, пройдите StringComparer.OrdinalIgnoreCase
, это также более совместимо с Турцией)