【问题标题】:Root level Action links are getting appended with Area name in Asp.net MVC根级操作链接在 Asp.net MVC 中附加了区域名称
【发布时间】:2018-03-20 10:34:48
【问题描述】:

我有这个代码结构,一个根级别的 Home 控制器和一个区域级别的 Home 控制器。 SO 上的一个答案帮助我解决了多控制器名称错误,但我没有得到的是为什么一旦访问了区域视图,根操作链接就会附加区域名称。

_Layout.cshtml

  <div class="navbar-collapse collapse">
                    <ul class="nav navbar-nav">
                        <li>@Html.ActionLink("Home", "Index", "Home")</li>
                        <li>@Html.ActionLink("About", "About", "Home")</li>
                        <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
                        <li>@Html.ActionLink("AuthorCF", "Index", "AuthorCFs")</li>

                        @*Area*@
                        <li>@Html.ActionLink("Service Requests", "Home", "ServiceRequests")</li>

                    </ul>
                </div>

当我点击服务请求时,我可以访问服务请求索引页面但是当我将鼠标悬停在关于/联系链接上时,我看到 "http://localhost:62864/ServiceRequests/Home/Contact" ,为什么会附加 ServiceRequests ?

如果我需要更清楚地问这个问题,请告诉我。

【问题讨论】:

  • @Html.ActionLink("Home", "Index", "Home", new { area = "" })
  • 此网址显示“localhost:62864/ServiceRequests/Home?Length=4”,点击后会停留在同一区域页面上。
  • 抱歉,忘记包含必要的第 5 个参数 - @Html.ActionLink("Home", "Index", "Home", new { area = "" }, null)
  • 感谢斯蒂芬的帮助!解决了。​​
  • 您可能会发现 this answer 及其链接有助于更好地理解行为

标签: c# asp.net asp.net-mvc


【解决方案1】:

博客是你的领域..

<%= Html.ActionLink("Show Blog", "ShowBlog", "Blog", new { area = "blog" }, null) %>

这可能有助于解决您的问题..

【讨论】:

    猜你喜欢
    • 2011-01-03
    • 2023-03-28
    • 2010-12-22
    • 2011-04-06
    • 1970-01-01
    • 2018-09-07
    • 2018-04-29
    • 2012-03-03
    • 1970-01-01
    相关资源
    最近更新 更多