这个ASP.NET MVC ActionMethod应该有两个视图吗?

Pur*_*ome 2 .net c# asp.net-mvc views

我正在使用ASP.NET MVC3,并且有一个非常简单的站点,只允许您登录/创建帐户或列出您的帐户详细信息.

我想要制作主页..基本上就是这样.如果您尚未登录,请让他们登录或创建新帐户.否则,请向他们显示其帐户详细信息 简单.

所以我不确定我是否应该这样做......

public ActionResult Index()
{
    return User.Identity.IsAuthenticated ? View("Show") : View("Index");
}
Run Code Online (Sandbox Code Playgroud)

这是一个非常人为的例子,但它基本上描述了我的问题.

我觉得这不是一个好方法..但我应该重定向到一个不同的方法..像真正的节目?..例如./ Show/UserFoo ????

我只是不确定人们在做什么 - 这是一种常见的模式.

思考?

Dar*_*rov 6

您可以使用[Authorize]检查用户是否经过身份验证的属性,以及是否重定向到登录页面.

[Authorize]
public ActionResult Index()
{
    return View();
}
Run Code Online (Sandbox Code Playgroud)

如果您不喜欢默认行为,也可以编写自定义授权属性.