Я хочу сделать это:
Dim person = From p In context.persons
Order By p.fileNum
Select p.ID,
p.firstName,
p.lastName,
startPenpal = IIf(p.prPenPals.Count > 0,
p.prPenPals.FirstOrDefault.startProfile, "")
Я получаю эту ошибку:
LINQ to Entities не распознает метод метода System.Object IIf (Boolean, System.Object, System.Object), и этот метод нельзя преобразовать в выражение хранилища.
Я пытался
Select p.ID, p.firstName, p.lastName,
startPenpal = If(i.prPenPals.Count > 0,
i.prPenPals.FirstOrDefault.startProfile, "")
и я получаю эту ошибку:
Невозможно привести тип 'System.DateTime' к типу 'System.Object'. LINQ to Entities поддерживает только приведение типов примитивов Entity Data Model.
Есть ли способ сделать это? prPenpals может содержать ноль или одну запись для каждой записи в Persons. Вероятно, должна быть связь от 1 до 0-1 между людьми и prPenPal, но модель имеет ее как один ко многим, и я не смог ее изменить.