如何将删除函数设置为从数据库中激活值
本文关键字:数据库 激活 设置 删除 函数 | 更新日期: 2023-09-27 17:49:21
我在控制器上有删除功能。我的函数从数据库中删除,我工作得很好,但现在我不希望它从数据库中永久删除,但只是将其设置为活动而不显示它。但是在数据库中它是存在的。
我有一个名为Active的列,它是1。我怎样才能使它处于活动状态而不是永久删除它。
这是我的控制器代码;
public ActionResult Deletefunction(Part model)
{
try
{
using (dbContext db = new dbContext())
{
Part del = db.Parts.Where(c => c.id == model.PartId).FirstOrDefault();
db.Parts.Remove(del);
db.SaveChanges();
}
return View();
}
catch (Exception ex)
{
throw ex;
}
}
感谢您的提前帮助
假设您的Part对象上有一个名为Active的列。您只需将delete语句更改为更新语句,如下所示;
public ActionResult Deletefunction(Part model)
{
try
{
using (dbContext db = new dbContext())
{
Part del = db.Parts.Where(c => c.id == model.PartId).FirstOrDefault();
// Changed from Delete to update
del.Active = 0;
db.SaveChanges();
}
return View();
}
catch (Exception ex)
{
throw ex;
}
}
请注意,无论您在哪里显示这些,如果您不想显示非活动的,您将不得不添加where子句,如;
var onlyActiveParts = db.Parts.Where(p => p.Active == 1);