У меня есть стандарт (CRUD генерироваться) функция удаленияКак я могу опубликовать witin контроллера для функции удаления?
// GET: Posts/Delete/5
public ActionResult Delete(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
Post post = db.Posts.Find(id);
if (post == null)
{
return HttpNotFound();
}
return View(post);
}
// POST: Posts/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int id)
{
Post post = db.Posts.Find(id);
db.Posts.Remove(post);
db.SaveChanges();
return RedirectToAction("Index");
}
Я хочу назвать это в контроллере, как этот
if (totalVotes <= 5 && voteValue == -1)
{
Delete(postId); //NOT WORKING
}
Но это заставляет меня Удалить функцию GET. Думаю, я должен сделать пост в контроллере, но как?
УдалитьConfirmed никогда не вызывается. Когда он используется? Безопасно ли выполнять функцию Delete, подобную этой, без [HttpPost] и [ValidateAntiForgeryToken]? – Xtreme
Вы не вызываете напрямую частный метод DeletePost? Он будет вызываться из другого метода (например: метод DeleteConfirmed action) – Shyju
Извините, но я не понимаю. Вы вызываете функцию DeletePost из вашего оператора if, но никогда не DeleteConfirmed. Но вы вызываете DeletePost из DeleteConfirmed. Должен ли я использовать DeleteConfirmed (postId)? – Xtreme