ASP.NET MVC一个路由,两个不同的视图

时间:2008-11-11 23:57:37

标签: asp.net-mvc view

我正在尝试为具有两个不同视图的MVC网站设计主页,具体取决于用户是否登录。

因此,默认(未登录)视图显示一般的非特定信息。如果我已登录,则该视图主要显示个人内容。

处理此问题的最佳做法是什么?别忘了,我们还需要进行单元测试。

谢谢堆!

2 个答案:

答案 0 :(得分:13)

这应该是从控制器返回适当视图的简单情况。

public ActionResult Index()

    If (User.IsLoggedOn)
    {
        // Do user-specific controller stuff here...

        return View("LoggedOnIndex");
    }
    else
    {
        // Do anon controller stuff here...

        return View("AnonymousIndex");
    }

答案 1 :(得分:2)

我不确定你能否做到

User.IsloggedOn

过去,但现在我不得不说

User.Identity.IsAuthenticated

如果您使用的是内置Web窗体身份验证。