【问题标题】:bootstrap 4.0 navbar links not redirecting with razorbootstrap 4.0 导航栏链接不使用剃刀重定向
【发布时间】:2018-08-07 19:13:48
【问题描述】:

您好,我正在使用 bootstrap 4.0,

我的导航栏有这个代码

<div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav mr-auto">
 <li class="nav-item">
            @Html.ActionLink("Manage assistants", "Index", "Assistant", new { @class = "nav-link" })
        </li>
....

我的问题是,当我尝试重定向到 assistantcontroller/index 时,导航栏链接正在重定向到 localhostxxx/?lenght=8

这里发生了什么?我错过了什么吗?

谢谢

【问题讨论】:

  • 重定向与不重定向与Bootstrap有什么关系??
  • 当我使用这个版本的引导程序时,链接不起作用..
  • 链接就是链接。重定向或不重定向与 Bootstrap 无关。
  • 感谢您的评论,但我认为我在标题中声明了“引导程序”和“链接”
  • 您没有发布任何实际的引导代码,即没有输出 HTML。然而,您却试图指责 Bootstrap“不重定向”链接。 Bootstrap 不会在导航栏中处理任何类型的重定向或不重定向。导航栏将使用您提供的任何链接。它不会对您的链接应用任何更改。除了添加和删除 css 的 active 类。

标签: asp.net-mvc model-view-controller bootstrap-4


【解决方案1】:

您使用this overload,其中第三个参数是routeValues 值。

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    object routeValues,
    object htmlAttributes
)

因为你传递了一个string,并且一个字符串有一个属性名称Length,它会生成?lenght=8作为查询字符串(虽然我假设你有一个错字,因为“Assistant”包含9个字符所以它会正在生成?length=9)

改变你的方法

@Html.ActionLink("Manage assistants", "Index", "Assistant", null, new { @class = "nav-link" })

以便您使用this overload

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    string controllerName,
    object routeValues,
    object htmlAttributes
)

【讨论】:

    猜你喜欢
    • 2014-02-16
    • 2018-05-07
    • 1970-01-01
    • 2015-04-17
    • 2018-02-28
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多