Так что у меня этот ASCX (PartialView) контроль - ControlTempASP.NET MVC - RenderAction - PartialView - BeginForm() - множественные формы
У меня есть Ajax.BeginForm внутри ControlTemp так:
<% using (Ajax.BeginForm("ControlTemp", new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "divControlTemp" })) {
....
<input type = "submit" />
<%}%>
Внутри моей MasterPage, я использую этот PartialView, как
<div id = "divControlTemp"> <% Html.RenderAction("ControlTemp", "Home", null); %></div>
Теперь проблема, если у меня есть страница, которая использует эту главную страницу и страница не постбэк к сообщению, эта функция также б Eing уволили:
[ActionName("ControlTemp"), AcceptVerbs(HttpVerbs.Post)]
public ActionResult ControlTemp(string URL)
{
...
return PartialView("ControlTemp");
}
ПРИМЕЧАНИЕ: Даже если я использую Html.BeginForm вместо Ajax.BeginForm, эти методы все еще заканчивает тем, что срабатывает
страница, которая использует этот Masterpage:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="loginTitle" ContentPlaceHolderID="TitleContent" runat="server">
Log On
</asp:Content>
<asp:Content ID="loginContent" ContentPlaceHolderID="MainContent" runat="server">
<h2>Log On</h2>
<p>
Please enter your username and password. <%= Html.ActionLink("Register", "Register") %> if you don't have an account.
</p>
<%= Html.ValidationSummary("Login was unsuccessful. Please correct the errors and try again.") %>
**<% using (Html.BeginForm("LogOn", "Account")) { %>**
<div>
<fieldset>
<legend>Account Information</legend>
<p>
<label for="username">Username:</label>
<%= Html.TextBox("username") %>
<%= Html.ValidationMessage("username") %>
</p>
<p>
<label for="password">Password:</label>
<%= Html.Password("password") %>
<%= Html.ValidationMessage("password") %>
</p>
<p>
<%= Html.CheckBox("rememberMe") %> <label class="inline" for="rememberMe">Remember me?</label>
</p>
<p>
<input type="submit" value="Log On" />
</p>
</fieldset>
</div>
<% } %>
См выше коде Html.BeginForm
... The LogOn
ActionMethod стреляют, но он стреляет ActionMethod этого ANO форма также!
Другой человек отправил эту проблему, но он/она не имеет решения:
POST method called on MVC UserControls as well as their parent views
Примечание: Там нет вложенных форм
очистить ваш код ... –