我一直在網上尋找如何做一個刪除HttpPost錯過了獲取,我讀過它是安全的做一個職位,而不是一個Get,所以那就是我想要做的。ASP.NET MVC 3刪除Http Post
[HttpPost]
public ActionResult Delete(Guid id)
{
var member = GetSelectedMember(id);
_repository.DeleteEntity(member);
TempData["message"] = String.Format("Blog {0} has been deleted!", member.Name);
return RedirectToAction("Index");
}
這是我的Post方法。
@using (Html.BeginForm("Delete", "Member", FormMethod.Post, new { id = item.ID }))
{
<input type="image" src="Content/delete.png" />
}
這是我的剃刀視圖。
以下是錯誤我得到
參數字典包含非可空類型的參數「ID」無效項「的System.Guid」的方法「System.Web.Mvc.ActionResult刪除( System.Guid)'在'GenericSaving.Controllers.MemberController'中。可選參數必須是引用類型,可爲空類型,或者聲明爲可選參數。 參數名:參數
所以,我可以不上的方法,因爲它之前然後坪錯誤打破,我的第一個猜測是,它不流通的GUID ID的參數。那麼基於我的形式出了什麼問題?
我認爲,也許作爲一種解決方案,我可以把它放在窗體上的隱藏字段?我將如何在post方法中收集此字段的內容?
放在'Html.BeginForm休息( 「刪除」, 「會員」,FormMethod.Post,新{ID = item.ID}'看什麼'item.id'分配給查詢字符串對象時保存 – Silvermind 2013-03-12 10:05:03