EF Entitystate从多对多中删除1条记录
本文关键字:删除 1条 记录 Entitystate EF | 更新日期: 2023-09-27 18:28:19
因此,我尝试从多对多表中删除1条记录。但是,它没有删除任何内容?
我试图删除记录,其中UserId==登录用户的Id,GroupId==Id是由名为GroupUser的多对多表中的链接提供的Id(字段:UserId和GroupId):
public IActionResult UnSubscribe(Int16 id)
{
if(User.GetUserId() != null)
{
GroupUser groupToDel = _MyContext.GroupUser.Where(g => g.GroupId == id).FirstOrDefault();
groupToDel.UserId+=User.GetUserId();
_MyContext.Entry(groupToDel).State = EntityState.Deleted;
_MyContext.SaveChanges();
return RedirectToAction("Index", "Group");
}
else
{
throw new Exception("There was an Error!");
}
}
你让这件事比我认为的更难,你应该试着这样做:
GroupUser groupToDel = _MyContext.GroupUser.Where(g => g.GroupId == groupid
&& g.UserId == userid).First();
_MyContext.GroupUser.Remove(groupToDel);
_MyContext.SaveChanges();