Бросок linq заканчивается для Списка <MyInterface>

chris@Optimus:~$ sudo ifdown eth0:0
ifdown: interface eth0:0 not configured
chris@Optimus:~$ sudo ifup eth0:0
RTNETLINK answers: File exists
Failed to bring up eth0:0.

Взгляды, как будто ifup был перепутан состоянием eth0:0. Самое легкое решение состоит в том, чтобы перезагрузить.

resolvconf: Error: /etc/resolv.conf isn't a symlink

Для фиксации этого работайте

sudo dpkg-reconfigure resolvconf
8
задан James 1 September 2009 в 07:42
поделиться

3 ответа

Вы можете выполнить приведение на клиенте, минуя уровень трансляции запросов структуры сущностей, вызвав метод расширения AsEnumerable :

return results.Any()
       ? results.AsEnumerable().Cast<IApplicationEntity>().ToList() 
       : null;

Однако лучше изменить порядок проверка счетчика :

var list = results.AsEnumerable().Cast<IApplicationEntity>().ToList();
return list.Count == 0 ? null : list;
20
ответ дан 5 December 2019 в 07:12
поделиться

Если вы хотите преобразовать результаты в сложный тип, вам нужно заставить код использовать LINQ to Objects, а не LINQ to Entities.

Вызов AsEnumerable перед приведением типов является уловкой.

Попробуйте следующее:

var results = from x in context.MyEntityTable
              where x.AProperty == AValue
              select x;

return results.AsEnumerable().Cast<IApplicationEntity>().ToList();

Также обратите внимание, что неразумно проверять Count () на перечисляемом, поскольку это означает, что коллекция повторяется по дважды.

3
ответ дан 5 December 2019 в 07:12
поделиться
return results.Count() > 0 ? 
results.Select(result => (IApplicationEntity)result)
.ToList() : null;
0
ответ дан 5 December 2019 в 07:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: