【发布时间】:2021-11-03 16:49:10
【问题描述】:
我的视图提交按钮没有响应。无法调用 [Httppost] 方法请检查下面的代码。当我点击提交时,视图或控制器没有响应。我的 httpGet 和 Httppost 方法同名。
* View
@model MT566_PSS.Models.EventController
@{
ViewBag.Title = "Assign Controller";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@using (Html.BeginForm("EventAssign", "ShowMessage", new { extMsgId = Model.ExternalMessageId, userId = Session["commitId"], currentController = Model.COMMIT_ID }, FormMethod.Post, new { id = "formPosted1" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div class="BNYMInputBox" id="BlotterSelection">
<div class="InputBoxHeader">
<h3>Assign Controller</h3>
</div>
<div><span id="postResult"></span></div>
<div id="inputFields">
@Html.DropDownListFor(m => m.ID, Model.UserList, "Select", new { @id = "SelectedValue" })
<input type="submit" value="Submit" id="Submit" />
@Html.ActionLink("Back to List", "GetExtMsg")
</div>
</div>
}
* Controller
[HttpPost]
public ActionResult EventAssign(int extMsgId = 0, string userId = "", string currentController = "")
{
T_REVIEW_EVENT_ID revent = _dbContext.T_REVIEW_EVENT_ID.FirstOrDefault(x => x.EXT_MSG_ID == extMsgId);
if (revent != null)
{
revent.CTRL_COMMIT_ID = userId;
}
_dbContext.SaveChanges();
var log = new T_LOG
{
EXT_MSG_ID = extMsgId,
COMMIT_ID = userId,
AFFECTED_DATE = DateTime.Now,
COMMENTS = currentController + " Changed to:" + userId,
CHANGED_COLUMN = "Table: " + "T_Review_Event_Id, " + "Column: " + "CTRL_INDICATOR",
OLD_VALUE = currentController,
NEW_VALUE = "Controller: " + userId,
APPLIED_LEVEL = ""
};
_dbContext.T_LOG.Add(log);
_dbContext.SaveChanges();
ViewData["result"] = "Updated..!!";
return View("Result");
}
【问题讨论】:
-
你是控制器
ShowMessageController吗? -
确认您的控制器名称并确保您使用的是正确的
BeginForm()重载 -
嗨朋友们,我检查了所有可能的事情,如控制器名称验证、更改视图名称以及模型名称,并尝试创建新视图。但是提交按钮仍然不起作用或没有将控制权转移到 [Httppost] 方法
标签: c# asp.net-mvc-4