ASP.NET Core MVC,用户登录后限制查看

Posted

技术标签:

【中文标题】ASP.NET Core MVC,用户登录后限制查看【英文标题】:How do I hide login view after a condition? 【发布时间】:2022-01-17 22:57:20 【问题描述】:

我想在用户登录系统后限制视图。

示例:我有一个注册视图。用户登录系统后,我想阻止访问注册视图。因为我们不需要查看这个视图。我该怎么做?

【问题讨论】:

嘿,删除了辅助功能标签,因为它与使残障人士可以访问产品等有关。希望您能得到答案! 在您的控制器操作中检查用户是否已登录,如果已登录,则将用户重定向到另一个页面。 当我允许用户登录视图或注册视图时,我使用 [AllowAnonymous] 属性。用户登录时如何限制它们? 【参考方案1】:

您需要将登录信息存储在会话或cookie中,然后才能获取。在您的注册页面方法中,您可以阅读登录信息并决定选择哪个页面。

public IActionResult registerView()
    // you can set login info in session or another better ways
    var isLogin=HttpContext.Session.GetString("isLogin");
    if(isLogin==null || isLogin=="")
        return View();
    else
        return RedirectToAction(nameof(Index));
    
 

【讨论】:

以上是关于ASP.NET Core MVC,用户登录后限制查看的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ASP.NET Core 5 MVC (.NET 5) 中获取记录的用户数据?

如何在 C# 页面 ASP.NET Core MVC 上使用 SignInManager 和 Usermanager

ASP.NET Core MVC 会话相同的站点 URL

ASP.Net Core - 登录后如何等待用户身份立即可用?

登录 ASP.NET Core 3.1 后如何获取用户信息

如何在 ASP.NET CORE 5.0 MVC 中将登录设置为默认路由