#c# #asp.net-mvc #content-management-system
Вопрос:
В моем проекте, когда я хочу удалить группу новостей, она не удаляется .
Это тело метода «Удалить» :
enter code public bool DeleteGroup(PageGroup pageGroup)
{
try
{
db.Entry(pageGroup).State=EntityState.Deleted;
return true;
}
catch (Exception)
{
return false;
}
}
Это вызовет метод удаления из контроллера :
@Html.ActionLink("Delete", "Delete", new { id = item.GroupID })
Это действие удаления в контроллере :
public ActionResult Delete(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
PageGroup pageGroup = PageGroupRepository.GetGroupById(id.Value);
PageGroupRepository.DeleteGroup(pageGroup);
if (pageGroup == null)
{
return HttpNotFound();
}
return View(pageGroup);
}
Это кнопка удалить :
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
<div class="form-actions no-color">
<input type="submit" value="Delete" class="btn btn-default" /> |
@Html.ActionLink("Back to List", "Index")
</div>
В чем проблема ?кнопка удаления или метод удаления ?
Ответ №1:
вы забыли сохранить изменения после удаления:
public bool DeleteGroup(PageGroup pageGroup)
{
try
{
db.Entry(pageGroup).State=EntityState.Deleted;
db.SaveChanges();
return true;
}
catch (Exception)
{
return false;
}
}