ASP.NET MVC - 为Web Aplication设置不同的入口点

时间:2013-12-01 16:04:16

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

我正在开发一个ASP.Net MVC网站,其预期的路由行为就像Facebook

当用户未登录并访问该网站时,他会显示欢迎页面 www.domain.com/

如果他登录我们希望他访问仍在的网站内容 www.domain.com/

我应该如何定义路线?

编辑:按照说明澄清更多内容

如果用户已登录,我想提供不同的Index操作,如果不是,则我想提供不同的。

无效的方法

[Authorize]
public ActionResult Index()
{
  return View();
}

[AllowAnonymous]
public ActionResult Index()
{
 return View();
}

因此,使用两个不同的索引操作,默认路由

routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional }

将按我的意愿执行。

1 个答案:

答案 0 :(得分:0)

通过查看我发现的MSDN Documentation,我可以在构造函数中传递我想要的View的名称。为了完整起见,这是我的实现。

public ActionResult Index()
    {
        if (User.Identity.IsAuthenticated)
        {
            return View();
        }
        else
        {
            return View("Welcome");
        }
    }