如果凭据匹配,以下代码将返回表的所有信息。但我想在else条件块中写另一个查询,它只返回admins表的特定列,例如Email,Name和Role。我怎样才能做到这一点?
Admin adminLoggedin = db.Admins.SingleOrDefault(x => x.Email==model.Email && x.Password == model.Password);
if (adminLoggedin == null)
{
return BadRequest();
}
else
{
// ***Query2 select Email , Name, RoleId from Admins Where Email = adminLoggedin.Email
// how to write this query with Entity framework and ado.net model
FormsAuthentication.SetAuthCookie(model.Email, model.RememberMe);
return Ok(adminLoggedin);
}
答案 0 :(得分:1)
使用匿名类型和查询syntanx,您可以编写如下内容:
select new CustomClass {Email, admin.Email,}
如果您需要从此函数返回此查询结果,请创建一个包含属性Name,Email等的简单类,然后将其与上面查询中的select子句一起使用,例如 {{1}}