加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – Html.BeginForm的默认区域是否始终是ASP.NET MVC

发布时间:2020-12-16 04:08:06 所属栏目:asp.Net 来源:网络整理
导读:我的Razor Layout视图中有以下代码(由我的应用程序中的所有视图共享): @using (Html.BeginForm("Logout","Account",FormMethod.Post,new { id = ViewIDs.Shared._AuthenticationPartial.LogoutForm })) { 这与我的家庭和帐户视图一起正常工作,即它呈现了一
我的Razor Layout视图中有以下代码(由我的应用程序中的所有视图共享):
@using (Html.BeginForm("Logout","Account",FormMethod.Post,new { id = ViewIDs.Shared._AuthenticationPartial.LogoutForm })) {

这与我的家庭和帐户视图一起正常工作,即它呈现了一个发布到?/ Account / Logout的表单.但是,当与名为“Person”的区域内的视图一起使用时,它会突然发布到?/ Person / Account / Logout.

现在,我能够解决这个问题如下:

@using (Html.BeginForm("Logout",new { area = "" },new { id = ViewIDs.Shared._AuthenticationPartial.LogoutForm })) {

这是否是正确的方法,即根据定义当前区域的默认区域?或者我的应用程序中存在配置问题?

解决方法

这是正确的方式. ASP.NET MVC隐式使用HTML帮助程序中的当前路由值.当您链接到同一控制器中的操作时,也可以通过说明操作名称来解决这个问题.如果要链接到另一个区域,则必须这样说明.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读