C# asp.net MVC, как организовать сообщения
Скажем, у вас есть страница, похожая на страницу вопросов Stackru, где пользователь может голосовать "за" или "против", вставлять новый ввод, редактировать сообщения, удалять комментарии или что-то еще. Учитывая, что страница должна работать как без, так и без JavaScript, как бы вы организовали страницу контроллера на веб-сайте asp.net mvc?
1 ответ
Все действия будут сообщениями, и они будут перенаправлены обратно к действию, которое их вызвало.
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 } );
}
Все мои кнопки на моей странице будут ссылками на действия, которые вызывают эти действия. Затем я добавил бы javascript для перехвата нажатий кнопок и обработки через AJAX (поэтому страница не нуждается в перезагрузке) таким образом, без javascript кнопки будут работать и просто вызывать перезагрузку страницы.