Я визуализирую вид через мой контроллер следующим образом:
public ViewResult Forum([DefaultValue(0)]int id)
{
ForumMessagesViewModel forumMsgs = new ForumMessagesViewModel(_articles.GetAllForumMessages());
return View(forumMsgs);
}
В этом представлении .aspx я хочу включить отправку сообщений. Поэтому я создал следующую форму:
<% using (Html.BeginForm("AddForumMessage", "Home"))
{ %>
<fieldset>
<legend>add message</legend>
<label id="NameLabel">name:</label>
<%= Html.TextBoxFor(model => model.newMessage.MessagePosterName) %>
<label id="TitleLabel">subject:</label>
<%= Html.TextBoxFor(model => model.newMessage.MessageSubject)%>
<label id="ContentTextLabel">contents:</label>
<%= Html.TextBoxFor(model => model.newMessage.MessageContents)%>
<%= Html.HiddenFor(model => model.parentMessageID, 0) %>
<div>
<input type="submit" value="submit"/>
</div>
</fieldset>
<%} %>
Идея состоит в том, чтобы захватить вышеуказанную форму с помощью этого действия (в контроллере дома):
[HttpPost]
public ActionResult AddForumMessage(ForumMessagesViewModel newMessage)
{
/* Add new forum message to DB */
return Forum(0);
}
но действие "Forum"
(сгенерировавшее представление) всегда захватывает его.
Что я делаю не так?
Спасибо,
Tom