Asp.net mvc asp.net MVC:使用不同的操作捕获Html.BeginForm
我通过控制器渲染视图,如下所示:Asp.net mvc asp.net MVC:使用不同的操作捕获Html.BeginForm,asp.net-mvc,forms,Asp.net Mvc,Forms,我通过控制器渲染视图,如下所示: public ViewResult Forum([DefaultValue(0)]int id) { ForumMessagesViewModel forumMsgs = new ForumMessagesViewModel(_articles.GetAllForumMessages()); return View(forumMsgs); } 在这个view.aspx中,我想启用消
public ViewResult Forum([DefaultValue(0)]int id)
{
ForumMessagesViewModel forumMsgs = new ForumMessagesViewModel(_articles.GetAllForumMessages());
return View(forumMsgs);
}
在这个view.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>
<%} %>
但是“论坛”
操作(生成视图)总是捕获它
我做错了什么
谢谢,
汤姆很奇怪。查看生成的标记,查看标记中是否呈现了正确的URL 此外,请尝试以下替代方法:
<% Html.BeginForm("..", ".."); %>
<% Html.EndForm(); %>
不确定您是否已经解决了这个问题,因为这是很久以前的事了,但可能其他人也有同样的问题 我刚刚遇到了同样的问题,同样是在创建论坛时,我的quickreply操作一直被我的论坛或线程操作所采用。我所做的就是交换一些路径,把线程和论坛的路径放在一个较低的位置,这就成功了 希望有帮助 Lauw标记是正确的(正确的操作出现在html源中的表单标题中),替代选项没有帮助:-(
<% Html.BeginForm("..", ".."); %>
<% Html.EndForm(); %>