gpt4 book ai didi

c# - ASP.NET Web API DELETE 方法错误

转载 作者:行者123 更新时间:2023-11-30 15:55:55 25 4
gpt4 key购买 nike

使用带有 Entity Framework 的 ASP.NET Web API DELETE 方法传递学生 ID,如果该 ID 存在于表中,则删除记录。当我尝试测试它时,我收到以下错误消息

“System.Data.Entity.Utilities.Check.NotNull[T](T 值,字符串参数名称)System.Data.Entity.DbContext.Entry[TEntity](TEntity 实体)”

public class StudentController : ApiController
{
[HttpDelete]
[Route("student/DeleteStudent/{id}")]

public IHttpActionResult DeleteStudent(string id)
{
using (var sd = new SchoolDBEntities())
{
var student = sd.Students
.Where(s => s.StudentID == id)
.FirstOrDefault();

sd.Entry(student).State = System.Data.Entity.EntityState.Deleted;
sd.SaveChanges();
}
if (id == null)
return BadRequest("Not a valid student id");

return Ok();
}
}

最佳答案

您应该检查学生是否存在;

        var student = sd.Students
.Where(s => s.StudentID == id)
.FirstOrDefault();
if (student != null)
{
sd.Entry(student).State = System.Data.Entity.EntityState.Deleted;
sd.SaveChanges();
}

关于c# - ASP.NET Web API DELETE 方法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47779342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com