Html.BeginForm部分用于不同的控制器

时间:2010-06-25 14:41:34

标签: asp.net-mvc controller html.beginform

我有以下代码:

<% using (Html.BeginForm("AddComment", "Comments", FormMethod.Post)) { %>
<div id="New_Comment">
<textarea name="newComment" id="newComment">Add comments</textarea>
<input type="submit" value="Add" />
<div><span class="text_grey">Attach:</span><a href="#" class="link_text_grey">File</a> <a href="#" class="link_text_grey">Link</a></div>
</div>
<%} %>

这是由MyPage控制器部分呈现的。由于某种原因,表单上的操作是空白的,如果我在MyPage控制器上引用一个方法,那么我想做的就是指向与我的表单不同的控制器。

2 个答案:

答案 0 :(得分:3)

为了解决这个问题,我简单地添加了区域路由值,如下所示:

new { area = "" }

使用空字符串将路线指向默认区域。

答案 1 :(得分:2)

1)您的“评论”操作是否标记为POST操作?

2)另外

尝试做:

<% Html.BeginForm("AddComment", "Comments"); %>

// Html and script

<% Html.EndForm(); %>

我知道你所拥有的和我的建议之间应该没有区别,但值得一试。