Я работаю над первым подходом базы данных в Entity Framework, где мне нужно получить определенные столбцы из Entity.Получение пользовательской колонки из IQueryable DB Первый подход EF
Public IQueryable<Entity.Employees> GetEmployeeName(String FName,String LName)
{
var query = (from s in Employees
where s.firstName = FName && s.lastName = LName
select new {s.firstName, s.middleName});
return query;
}
Здесь возвращают оператор бросает ошибку, когда, кажется, что его не соответствие с Employees
(сущностей) столбцов. Не могли бы вы помочь мне в решении этой проблемы? Заранее спасибо.
Я изменил на ==, но проблема, с которой я столкнулся, - это Entity.Employees у нас есть 4 столбца, но запрос var я хочу только 2 столбца в инструкции select. Поэтому я получаю ошибку, как показано ниже: «Анонимные типы: a is new {} Невозможно неявно преобразовать тип 'System.Linq.IQueryable' << анонимный тип: string firstName, строка middleName >> 'to'System.Linq .IQueryable. Явное преобразование существует (вам не хватает роли?) ' –
user3129206
Я только что обновил свой пост. Поскольку вы возвращаете анонимный тип, вам нужно использовать динамический тип в качестве типа возврата. В качестве альтернативы вы можете создать собственный тип оболочки с двумя полями FirstName и MiddleName и вместо этого вернуть их. Это позволит вам работать с intelisense, когда данные возвращаются из результата. – Leadfoot
Я пытаюсь получить доступ к этому методу метода [link] (http: // localhost: 1985/Employee.svc/GetEmployeeName? FName = 'Jake' & LName = 'Smith'), но получить ошибку. Я хочу получить конкретные столбцы вместо целых столбцов сущности. Не могли бы вы предложить или предоставить образец фрагмента, как это сделать. Спасибо в Advance. – user3129206