我在這裏遇到了一些麻煩。我有一種觀點,公司可以對我們網站的用戶進行讚譽或拒絕。用戶被列在一個表格中,並且一列有小公司用來投票或反對用戶的小手形象。我在那裏編寫了一個ActionLink,但是,我不希望每次公司對用戶進行投票時發生回傳。ASP.NET MVC 3 - 如何在離開視圖後執行代碼?
我決定用公司投票的用戶ID填寫一個列表,然後當離開頁面時,過濾器會攔截請求,獲取列表並處理投票。在this post中,我教過如何在調用Action時初始化Filter參數,但正如您所看到的,我需要一種方式讓Filter在用戶退出View時獲取列表,而不是在Action中。
我不想使用代碼隱藏,因爲,與MVC配對,這不是一個最佳做法,但回發也不是一個選項。
這是我到目前爲止有:
public ActionResult ListUsers()
{
// Create a List with user models and send it to a View,
// which generates a WebGrid
return View(userList);
}
public class PromoteUsersFilter : ActionFilterAttribute
{
public int[] UsersToPromote { get; set; }
public int[] UsersToScrewWith { get; set; }
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
//insert promoting logic here
}
}
我相信有這樣做的一個簡單的方法,因爲大多數網站有這樣的funcionality。任何人都可以用這個指導我嗎?
「當lea瀏覽頁面「不是您可以在服務器上處理的事件。 「離開頁面」可能會導致瀏覽器關閉,您將無法獲得任何回報。使用AJAX。 – 2012-04-13 17:05:13