【问题标题】:How to redirect to Index.cshtml on HTML pages?如何在 HTML 页面上重定向到 Index.cshtml?
【发布时间】:2018-03-03 20:26:27
【问题描述】:

我有一个重定向到 @Url.Action("Index", "Home") 的按钮,它是位于所有页面中的主菜单的一部分,包括 HTML 和 cshtml。所以我不知道如何在单击按钮时告诉 HTML 重定向到索引 cshtml。

*HTML 页面占网站内容的 80%。

*我目前正在使用 ASP.Net MVC 3

问候。

【问题讨论】:

    标签: asp.net asp.net-mvc-3


    【解决方案1】:

    如果您想要将 static HTML 页面链接到 HomeControllerIndex 操作,一个简单的 html 链接应该可以解决问题:

    <a href="/home/index">Home</a>
    

    【讨论】:

    • 我应该使用~/home/index,htmls页面不在同一级别的mvc视图中
    • ~/home/index 不适用于静态 html 页面,~ 由 ASP.NET (MVC) 引擎解析并转换为完整 url,但不会在静态 html 上进行解析页。您必须查看生成的 url 的外观,并在链接的 href 属性中手动设置。 @Url.Action("Index", "Home")生成的url是什么样的?
    【解决方案2】:

    由于这个 Q 已经回答了只是一些额外的信息,如果你想告诉你的 cshtml 文件重定向到应用程序内部的 html 文件,除了直接链接(或使用 /../../SomeFolder ) 你可以使用

    <a href="@Url.Content("~/Home/Index.html")">Home</a>

    【讨论】:

      【解决方案3】:
      var page = HttpContext.Current.Handler as Page;
      
      Response.Redirect(page.GetRouteUrl("Default", new { Controller = "Home", Action = "Index" }), false);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-02
        • 2016-03-06
        • 2014-10-25
        • 2017-01-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多