Asp.net mvc 使用MVC区域时,注销表单在404中提交结果

Asp.net mvc 使用MVC区域时,注销表单在404中提交结果,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,我在_Layout.cshtml中为MVC区域定义了以下内容。请注意,我将该区域指定为空,以便该操作将在不在该区域而是在父应用程序中的帐户控制器中执行。但是,当执行提交时,生成的URL仍定义为: /代表/帐户/注销 结果是404。REP是定义此代码的区域。我在网上查看了google、stackoverflow等,我所看到的一切似乎都表明此代码应该正确运行并提交给适当的操作: /帐户/注销 有什么想法吗 @using (Html.BeginForm("Logoff", "Account",

我在_Layout.cshtml中为MVC区域定义了以下内容。请注意,我将该区域指定为空,以便该操作将在不在该区域而是在父应用程序中的帐户控制器中执行。但是,当执行提交时,生成的URL仍定义为:

/代表/帐户/注销

结果是404。REP是定义此代码的区域。我在网上查看了google、stackoverflow等,我所看到的一切似乎都表明此代码应该正确运行并提交给适当的操作:

/帐户/注销

有什么想法吗

    @using (Html.BeginForm("Logoff", "Account",
     new { area = "" },
     FormMethod.Post,
     new { id = "LogoutForm" }))
     {
          @Html.AntiForgeryToken()
          <a href="javascript:document.getElementById('LogoutForm').submit()">Log off</a>
     }

你的代码根本没有意义。请发布表单HTML的样子,我99.99%确定从MVC的角度来看它是完全不正确的。它看起来格式正确,它是HTML/razor。我不知道,你没有发布。Erik,你最初的帖子让我更仔细地了解了发生了什么。布局包含在嵌套的父布局中,该父布局具有自己的登录表单。我重新构造了代码,一切都很好。谢谢你的提醒。@xgp:把它作为答案贴出来,尽可能地接受它。