2011-07-14 66 views
0

假設你有一個類似Stackoverflow的問題頁面,用戶可以向上或向下投票,插入新的輸入,編輯消息,刪除註釋或其他內容。鑑於該頁面應該可以同時使用w /和w/o javascript,你將如何在asp.net mvc網站中組織控制器頁面?c#asp.net mvc如何組織帖子

+0

你是什麼意思?爲什麼會JS或不重要? –

+0

您是否嘗試過在JavaScript中禁用瀏覽StackOverflow?許多功能(如投票)實際上並不工作。 – Justin

+2

以及只是因爲StackOverflow不工作W/O JS並不意味着我必須做同樣的:) – Shaokan

回答

3

所有操作都是帖子,他們會重定向到調用它們的操作。

public ActionResult Index(int pageID){ 
    return View();//the question page 
} 

[HttpPost] 
public ActionResult Upvote(int pageID, int messageID){ 
    //update message votes 
    return RedirectToAction("Index", new { @pageID = pageID }); 
} 

[HttpPost] 
public ActionResult Downvote(int pageID, int messageID){ 
    //update message votes 
    return RedirectToAction("Index", new { @pageID = pageID }); 
} 

[HttpPost] 
public ActionResult PostComment(int pageID, int parentMessageID){ 
    //add comment to parent message 
    return RedirectToAction("Index", new { @pageID = pageID }); 
} 

我的頁面中的所有按鈕都是actionlinks,它們會調用這些post操作。然後,我會添加javascript攔截按鈕點擊和處理通過AJAX(所以頁面不需要重新加載),沒有JavaScript的按鈕將仍然工作,只是導致頁面重新加載