Побитовый результат LINQ для словаря
Мне нужно запросить таблицу с помощью побитового оператора, чтобы получить результат словаря. Я далеко не профессионал, когда дело доходит до LINQ, у меня есть следующее:
return (Dictionary<string, bool>) (from r in db.LocationVisibilities
where (r.Code & (int) permissionLevel) != 0 //bitwise statement in where clause
select new
{
r.Item, value = Boolean.Parse(r.Attribute.ToString())
});
1 ответ
Решение
Вы не можете привести запрос к словарю, как это, вы можете вызвать ToDictionary
вместо этого, и он будет обрабатывать все детали для вас.
var dict=
(from r in db.LocationVisibilities
where (r.Code & (int) permissionLevel) != 0 //bitwise statement in where clause
select new {
r.Item, value = Boolean.Parse(r.Attribute.ToString())
}).ToDictionary(w=>w.Item, w=>w.value);