在MVC4中未指定任何操作时重定向到index.html

时间:2015-03-13 04:00:23

标签: html asp.net-mvc-4 azure routing

我正在构建一个网站,我希望在访问应用程序的根目录时提供静态html,并且在指定操作时,需要将其重定向到适当的控制器。

例如,www.abc.com在其根文件夹中有index.html,当用户输入www.abc.com时,必须提供index.html,其中包含指向其他网页的链接,如www.abc.com /家庭/索引

我在windows azure网站上托管这个,所以IIS配置可能无法实现。有没有其他方法可以使用路由表或其他方法忽略特定场景?

2 个答案:

答案 0 :(得分:0)

创建单独的Action及其视图。相同的操作将是您的默认根。

public ActionResult StartIndex()    
{
    return View();
}

内部视图StartIndex.cshtml可以编写脚本,如下所示

@{ Layout=null; }
<script>
  $(document).ready(function(){
      window.location.href='www.abc.com';
  });
</script> 

它可能对你有帮助。

答案 1 :(得分:0)

我通过删除路由表中的默认控制器来解决此问题。

routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { action = "Index", id = UrlParameter.Optional }
        );

现在除非指定了控制器,否则它将启动index.html