我有一个继承的MVC项目.在视图上,BeginForm标记中没有指定路由(控制器和操作).视图呈现正确,因此我假设它正在选择默认路由.
我的问题是,如果没有指定路线,它是如何知道使用的路线?这里的最佳做法是:您是指定路线还是让它默认?
所以视图是Views / Config / WorkCodes.cshtml,标签是
Html.BeginForm()
它进入控制器ConfigController.cs并调用操作WorkCodes().如果我正在做这个项目,我会写的
Html.BeginForm("WorkCodes","Config",FormMethod.Post)
MVC如何知道使用哪个控制器和操作而不指定它?
WorkCodes.cshtml
@{ ViewBag.Title = "Work Codes"; } @using (Html.BeginForm()) { <div> <table style="width: 100%;" class="trHoverHighlight"> <tbody> <tr> <td> <br /> <div> <button id="buttonCreateNew" type="button">Add New</button> <button id="buttonReturn" type="button">Return</button> </div> </td> </tr> </tbody> </table> </div>
}
ConfigController.cs
public ActionResult WorkCodes() { return View(Rep.GetWorkAll(true)); }
@foreach (var itm in (List<string>)ViewBag.ListObjects) { <li> <a href="../Config/@itm">Work Codes</a> </li> }
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。