У меня есть две модели - категория и статья. У меня есть почти одинаковые виды просмотров и контроллеры для обоих из них. Единственное отличие состоит в том, что он работает для категорий, но со статьями я получаю пустую модель на HttpPost.
Категории:
public ActionResult DeleteCat(int id)
{
Category cat = db.CategoryByID(id);
if (cat != null)
{
return View(cat);
}
return RedirectToAction("Index");
}
[HttpPost]
public ActionResult DeleteCat(Category model)
{
db.DeleteCategory(model.CategoryID);
return RedirectToAction("Index");
}
Статьи:
public ActionResult Delete(int id)
{
Article art = db.ArticleByID(id);
if (art != null)
{
return View(art);
}
return RedirectToAction("Index");
}
[HttpPost]
public ActionResult Delete(Article model)
{
db.DeleteArticle(model.ArticleID);
return RedirectToAction("Index");
}
Оба представления генерируются Visual Studio, и я не изменил их. Когда я хочу удалить категорию, все будет хорошо. Но когда я хочу удалить статью, она сначала правильно выбирается из базы данных, затем отображается представление (все в порядке), но когда я нажимаю кнопку удаления, модель пуста (все свойства равны 0, null или false) и поэтому db.DeleteArticle выдает исключение (нет статьи с ArticleID = 0). Может ли кто-нибудь указать мне какие-либо подсказки относительно того, что я должен проверить или как мне это сделать?