我正在使用实体框架中的数据库优先方法,我必须从实体中检索特定的列。
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;
}
这里,return语句抛出一个错误,它似乎与Employees
(实体)列不匹配。你能帮我解决一下这个问题吗?提前谢谢。
答案 0 :(得分:0)
您需要使用==进行比较,还需要使用动态类型作为返回类型,因为您要返回自定义匿名类型。试试这个
Public IQueryable<dynamic> 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.AsQueryable();
}
最后,您将像下面一样使用它,请记住,intelisense不适用于动态对象。
var query = GetEmployeeName("Jake", "Smith");
List<dynamic> results = query.ToList();
foreach (dynamic result in results)
{
string fristName = result.FirstName;
string lastName = result.MiddleName;
}