Скрытый сценарий: у человека нет, одного или нескольких домашних животных.
Используя Linq to Sql, необходимо получить IQueryable
список домашних животных для данного personID. Вот плохо искаженная / зарезанная / запутанная часть ERD:
Код:
public IQueryable<Pet> GetPersonPets(int personID)
{
var personPets= from p in Person
where p.ID == somePersonID
select p.Pets;
return personPets; //fail
// return (IQueryable<Pet>)personPets //also fail
// return personPets.AsQueryable<Pet>() //also fail
}
Возникло исключение:
Cannot implicitly convert type 'System.Collections.Generic.IEnumerable (System.Data.Linq.EntitySet(Pet))' to 'System.Linq.IQueryable(Pet)'. An explicit conversion exists (are you missing a cast?)
Неудачные попытки:
Прямое преобразование не сработало: (IQueryable<MyType>)
Вызов метода сбора AsQueryable
не сработал: .AsQueryable<MyType>()
Вопрос:
Как правильно преобразовать результаты запроса LinqToSql в IQueryable
?