Как правильно преобразовать два столбца из SQL (2008) с помощью Linq в словарь (для кэширования)?
В настоящее время я перебираю IQueryable, потому что не могу заставить метод ToDictionary работать. Есть идеи?
Это работает:
var query = from p in db.Table
select p;
Dictionary<string, string> dic = new Dictionary<string, string>();
foreach (var p in query)
{
dic.Add(sub.Key, sub.Value);
}
То, что я действительно хотел бы сделать, это что-то вроде этого, что, кажется, не работает:
var dic = (from p in db.Table
select new {p.Key, p.Value })
.ToDictionary<string, string>(p => p.Key);
Но я получаю эту ошибку:
Невозможно преобразовать из 'System.Linq.IQueryable' в 'System.Collections.Generic.IEnumerable'