c# - ASP.NET 将某些页面重定向到登录页面

标签 c# asp.net-mvc redirect

我是 ASP.NET 的新手,我正在尝试创建一个简单的 CRUD 应用程序,我希望在用户未登录时将某些页面重定向到登录页面。我不想这样做站点范围重定向以登录所有非主页页面。我一直在摆弄 Controller ,发现如果用户未登录,在 Controller 中使用此代码将重定向到登录页面:

public ActionResult Index()
{
    if (User.Identity.IsAuthenticated)
    {
        return View(db.Events.ToList());
    }
    else
    {
        Response.Redirect("Account/Login",true);
        return null;
    }
}

我有一种感觉,这绝对不是 ASP.NET 的最佳实践。如果有人能解释原因或指出正确的方向,那就太好了。

最佳答案

您可以使用[Authorize] 属性,如果用户未被授权,它将重定向到登录页面。

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

您需要在 web.config 中配置您的登录页面

关于c# - ASP.NET 将某些页面重定向到登录页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29860720/

相关文章:

asp.net MVC 数据库驱动的导航菜单

regex - 如何结合两个 Apache htaccess 重定向条件(http 到 https 和非 www 到 www)

.htaccess - 将页面重定向到不同域下的同一页面

c# - 如何获取Xamarin Android项目的卫星数量

c# - FluentValidation:验证继承同一基类的对象列表

c# - 设计用于 F# 和 C# 的 F# 库的最佳方法

asp.net-mvc - 如何将 ASP.MVC View 的内容保存为字符串?

c# - 使用 seckeygeneratepair 中的公钥进行加密

javascript - 如何使用jquery更改为所需的日期格式?

ruby-on-rails - 为什么当 rails redirect_to 成功调用新的 url 时浏览器的地址没有改变?