当我试图实现get by id API服务时,我得到了所有的记录,而不是ASP.NET Core Web API中的某个特定记录。
[HttpGet("EmployeeId")]
public ActionResult<Employeedatum> Getbyid(int EmployeeId)
{
if (EmployeeId <= 0)
{
return NotFound("not found");
}
Employeedatum employeedata = DbContext.Employeedatum.FirstOrDefault(s => s.empid == EmployeeId);
if (employeedata == null)
{
return NotFound("notfound");
}
return Ok(employeedata);
}
3条答案
按热度按时间uubf1zoe1#
当我试图实现get by id API服务时,我得到了所有的记录,而不是ASP.NET Core Web API中的某个特定记录。
好吧,首先你的问题,你分享的代码片段和你所附的截图是不同的。我正在考虑你的实际代码片段,而不是截图。
根据您的代码片段,我已在
DbContext class
中替换了您的代码,并尝试模拟您的问题。我正在按预期获得数据。请确保您已相应地遵循以下步骤:型号:
[Key]
在数据过滤中起着重要的作用,请确保您的Employeedatum
类需要[Key]
,因此在数据库中也需要[Key]
,您可以检查如下:数据库上下文:
控制器:
SingleOrDefault
。替代方式:
您甚至可以使用
Find
来过滤或搜索您的实体。如果您还需要更多的信息,您可以在这里查看我们的官方文件。
gopyfrb32#
您的代码应该可以工作。但是需要检查Employeedatum和DB初始化来发现我们的多个数据返回问题。
反正你可以像下面这样开发它
bzzcjhmw3#
尝试将此作为Lync查询