首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在ASP.NET Core 3.1中获取PageModel中的当前登录用户

在ASP.NET Core 3.1中,可以通过以下步骤获取PageModel中的当前登录用户:

  1. 首先,确保已经配置了身份验证和授权服务。可以在Startup.cs文件的ConfigureServices方法中添加以下代码:
代码语言:txt
复制
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
    .AddCookie(options =>
    {
        options.LoginPath = "/Account/Login";
        options.AccessDeniedPath = "/Account/AccessDenied";
    });

services.AddAuthorization();
  1. 在PageModel类中,可以通过注入UserManager和SignInManager来获取当前登录用户的信息。可以在PageModel类的构造函数中添加以下代码:
代码语言:txt
复制
private readonly UserManager<IdentityUser> _userManager;
private readonly SignInManager<IdentityUser> _signInManager;

public YourPageModel(UserManager<IdentityUser> userManager, SignInManager<IdentityUser> signInManager)
{
    _userManager = userManager;
    _signInManager = signInManager;
}
  1. 然后,在需要获取当前登录用户的方法中,可以使用以下代码获取当前登录用户的信息:
代码语言:txt
复制
var user = await _userManager.GetUserAsync(User);

其中,User是PageModel类的一个属性,表示当前请求的用户。

  1. 获取到当前登录用户后,可以使用user对象的属性来获取用户的相关信息,例如用户名、邮箱等。
代码语言:txt
复制
string username = user.UserName;
string email = user.Email;

这样就可以在ASP.NET Core 3.1中获取PageModel中的当前登录用户了。

对于ASP.NET Core 3.1的相关知识,可以参考腾讯云的产品文档:ASP.NET Core 3.1

注意:以上答案仅供参考,具体实现可能会因项目配置和需求而有所不同。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET Core 2.0 MVC - 获取当前登录用户信息

由于上一篇只是大概说了下项目,所以准备写下这篇详细说下自己对于获取当前登录用户设计与实现,原本准备上周末就完成这篇,结果周六一起来,发现自己起水痘了,嗯,很悲催。。。...请了一个星期假,今天好歹头不痛,不发烧能看电脑了,就努力努力赶出来吧。  获取当前登录用户整体思路,我们可以通过创建一个静态用户类,存储当前登录用户。...通过将属性值存储session,从而存储到服务器内存,做到可以系统全局获取当前登录用户数据信息。   ...传统MVC项目中我们可以直接使用HttpContext.Current.Session获取到session,从而做到对于数据取值、赋值;而在ASP.NET Core MVC,并没有HttpContext.Current.Session...二、实现思路   首先,ASP.NET Core 中使用Session,我们需要将Session注入到ASP.NET Core管道(pipeline),和我们使用MVC方式相同,ConfigureServices

2K20

项目之通过Spring Security获取当前登录用户信息(6)

补全:学生注册时分配角色 “学生注册”业务,应该及时获取新插入用户数据id,并将该用户id和角色id(学生角色id固定为2)插入到user_role数据表,以记录新注册学生角色。...在用户登录时,应该读取用户权限,以完成Spring Security验证过程授权,以保证后续进行某些访问时,能给出正确判断,使得某些用户可以执行某些操作,而另一些用户可能因为没有权限而不能执行这些操作...通过Spring Security获取当前登录用户信息 当用户成功登录后,需要获取用户信息才可以执行后续操作,例如获取用户权限、获取用户问题列表、获取用户个人信息等等。...Spring Security提供了简便获取当前登录用户信息做法,控制器处理请求方法,添加Authentication类型参数,或添加Principal类型参数,均可获得当前登录用户信息...()); userInfo.setGender(user.getGender()); userInfo.setType(user.getType()); return userInfo; 以后,当需要获取当前登录用户信息时

1.7K10

【C】KoobooJsonasp.net core使用

详细介绍可以参考官方说明,项目地址:https://github.com/Kooboo/Json ps:楼主目前使用版本是:asp.net core 2.2 asp.net core 2.x ,...默认使用json序列化工具是 Newtonsoft.Json ,如果你正在使用 asp.net core mvc/webapi ,并且需要对 Json 序列化进行一些配置(例如 首字母大小写,日期格式化等...,你可以第5步 UseKoobooFormatters ,通过设置 serializerOption.GlobalValueFormat 和 deserializeOption.GlobalValueFormat...,对于byte[]类型base64解析行为, KoobooJson已经内嵌配置项, 只要设置serializerOption.IsByteArrayFormatBase64 = true 即可 public...Json序列化处理整理 2.将 .NET Core 2.0 默认 JSON 解析器替换为 Jil ———————————————— 版权声明:本文为CSDN博主「j_teng」原创文章,遵循 CC

63850

用最简单方式ASP.NET Core应用实现认证、登录和注销

本篇文章提供了一个极简实例让读者体验如何在ASP.NET Core应用实现认证、登录和注销。...一般来说,用户试图通过登录应用以获取认证票据时候需要提供可用来证明自身身份用户凭证(User Credential),最常见用户凭证类型是“用户名 + 密码”。...接下来我们就通过一个简单实例来演示如何在一个ASP.NET Core应用实现认证、登录和注销功能。...应用主页需要登录之后才能访问,所以针对主页匿名请求会被重定向到登录页面。登录页面输入正确用户名和密码之后,应用会自动重定向到应用主页,该页面会显示当前认证用户名并提供注销链接。...如下面的代码片段所示,我们定义ProgramSignOutAsync扩展方法正是调用这个方法来注销当前登录状态。我们完成注销之后将应用重定向到主页。

3.4K30

正式开始学习ASP.NET Core 6 Razor Pages 介绍

随后屏幕上,选择“ ASP.NET Core Web应用程序”模板,然后单击“ 下一步”。在下一个屏幕上,为项目提供一个名称。...Razor Pages是.NET Core 2.0引入。它轻巧,灵活,并为开发人员提供了对呈现HTML完全控制。...某些方面, Razor Pages 类似于经典ASP.NET Webforms框架。ASP.NET Webforms,我们有一个ASPX页和一个代码隐藏类。...ASP.NET Core MVC与Razor Pages MVC 是用于实现应用程序用户界面层架构设计模式 Model(模型):包含一组数据类和从底层数据源(如数据库)查询数据逻辑。...一些ASP.NET Core Web应用程序,也可以将两种模式(即ASP.NET Core MVC和Razor Pages)组合在一起。

3.6K10

Do You Kown Asp.Net Core -- Asp.Net Core 2.0 未来web开发新趋势 Razor Page

此次Razor Page是否能带来不一样体验呢,让我们一起来看看吧。 什么是Razor Page     我们都知道Asp.Net MVC,Razor是其一种视图引擎。...Core –> Asp.Net Core Web应用程序,接下来会弹出一个对话框,让我们选择模板类型: ?...那像原来我们一个Controller,有Get()和Get(id)表示获取列表和获取单个Item,那Razor Page如何运用呢?...Core 2.0新增特性,你只需要在PageModel属性上加上TempData特性即可。...比如当你创建一个用户时候,你会希望跳转回用户列表页,并在用户列表页提示添加成功信息,这时候你可以通过Message属性上加上[TempData]特性,引用下微软Docs例子: public class

2K60

【Docker】Asp.net coredocker容器端口问题

还记得【One by one系列】一步步学习docker(三)——实战部署dotnetcore遇到问题么?容器内部启动始终是80端口,并不由命令左右。...1.Kestrel配置 ASP.NET Core项目使用Kestrel作为默认web服务器。...Dockerfile 2.1 Asp.Net Core Runtime 首先我们按照asp.net core其中一个版本构建镜像Dockerfile ARG REPO=mcr.microsoft.com...指定版本运行时压缩包 验证压缩包正确性 解压压缩文件 删除压缩文件 ” 2.2 .Net Core Runtime 根据上面的Dokcerfile,可以看到asp.net core镜像是.net...Runtime Dependencies 根据上面的Dokcerfile,可以看到.net core镜像是runtime-deps基础上构建,所以继续找到runtime-deps构建镜像Dockerfile

2.2K20

Open ID Connect(OIDC) ASP.NET Core应用

Identity Server4提供OIDC认证服务(服务端) ASP.NET Core权限体系OIDC认证框架(客户端) 什么是 OIDC 了解OIDC之前,我们先看一个很常见场景...如果没有则创建一个用户并将这个用户作为当前用户登录(我们自己应用登录逻辑,比如生成jwt),如果有了则用之前用户登录。...oAuth在这里麻烦地方是我还需要再请求一次API去获取用户数据,注意这个API和登录流程是不相干,其实是属于微博开放平台丛多API一个,包括微信开放平台也是这样来实现。...以上没有认证过程,只是给我们应用授权访问一个API权限,我们通过这个API去获取当前用户信息,这些都是通过oAuth2授权码模式完成。...由于用户登录代码过多,完整代码可以加入ASP.NET Core QQ群 92436737获取。 此处仅展示配置核心代码。

2.3K80

ASP.NET Core 依赖注入基本用法

控制反转关系图如下(图片来源于官网): image.png ASP.NET Core依赖注入 上面介绍了依赖注入基本概念,那么 ASP.NET Core,我们该如何使用依赖注入呢?... ASP.NET Core已经内置了一套依赖注入容器,我们可以直接使用。...Startup.ConfigureServices添加我们要注册服务和实现,添加时候可以对服务生命周期进行相应配置,然后就可以PageModel、Controller、Views等需要地方使用了...PageModel中注入服务 PageModel中注入服务方式,与Controller中注入服务方式相似: public class IndexModel : PageModel {...虽然优先推荐通过构造函数方式注入来获取服务,但是很难避免有些时候需要手工获取服务,使用手工获取服务时候,我们应当从HttpContext.RequestServices获取

2K20

ASP.NET Core 基础知识】--最佳实践和进阶主题--设计模式ASP.NET Core应用

2.2 ASP.NET Core应用 ASP.NET Core,单一职责原则可以应用在多个层面,包括控制器、服务类、中间件等等。...3.2 ASP.NET Core应用 ASP.NET Core,可以通过以下方式应用开放封闭原则: 扩展功能通过依赖注入: ASP.NET Core,依赖注入(Dependency...6.2 ASP.NET Core应用 ASP.NET Core,可以通过以下方式应用里氏替换原则: 控制器继承关系: ASP.NET Core,控制器是处理HTTP请求重要组件。...7.2 ASP.NET Core应用 ASP.NET Core,单例模式可以用于管理全局性资源或服务,以确保整个应用程序生命周期内只有一个实例存在。...8.2 ASP.NET Core应用 ASP.NET Core,工厂模式常用于创建不同类型服务或组件,以满足应用程序需求。

5900

Spring Security ,我就想从子线程获取用户登录信息,怎么办?

大家知道 Spring Security 想要获取登录用户信息,不能在子线程获取,只能在当前线程获取,其中一个重要原因就是 SecurityContextHolder 默认将用户信息保存在 ThreadLocal...final String MODE_GLOBAL = "MODE_GLOBAL"; ... ... } 第二种存储策略 MODE_INHERITABLETHREADLOCAL 就支持子线程获取当前登录用户信息...这个问题搞懂了,就理解了为什么 Spring Security ,只要我们稍加配置,就可以子线程获取当前登录用户信息。...对象,获取时候需要传入当前线程,看到这里大家可能就猜出来几分了,数据存储一个类似于 Map ThreadLocalMap ,ThreadLocalMap 又和线程关联起来,怪不得每个线程只能获取到自己数据...修改完成后,再次启动项目,就可以子线程获取登录用户数据了,至于原理,就是前面所讲

4.5K30

为什么你需要将代码迁移到ASP.NET Core 2.0?

相信目前技术社区开发人员讨论最多问题就是:是否应该将代码迁移到 ASP.NET Core 2.0? ” 答案是肯定。...编译器会在使用新语言增强功能进行重新编译时,对代码进行优化。 TechEmpower 发现在超过 230 个使用 Web 框架基准框架ASP.NET Core 性能上都取得了巨大进步。...如果你很熟悉为 MVC 配置 ASP.NET Core Startup 类,那么可以 Startup 类添加以下代码: public class Startup { public void...通过新 PageModel 对象能够构建更复杂结构。PageModel 是 MVVM 架构一个概念,允许开发人员执行方法并将属性绑定到正在呈现页面内容。...Core 2.0 Azure App Service 上运行时,不但无需做任何修改并且还提供集成功能,同时还能获取 Azure Application Insights 提供性能分析、错误报告和诊断结果

88010

简便实用: ASP.NET Core 实现 PDF 加载与显示

前言 Web应用开发,经常需要实现PDF文件加载和显示功能。本文小编将为您介绍如何在ASP.NET Core实现这一功能,以便用户可以Web应用查看和浏览PDF文件。...实现步骤 1)服务器端创建PDF 打开 Visual Studio 并创建新 ASP. NET Core Web 应用程序,小编这里项目名称为CreatePDF。...选择 .NET Core 6.0 作为项目的目标框架。 安装依赖包:“Solution Explorer右键单击该项目,然后选择“Manage NuGet Packages”。...右上角“Package source”,进行选择。...3步实现PDF编辑器中提供了一个注释编辑器功能,用于文档添加或删除不同类型注释,例如文本注释,圆圈注释,图章注释,编辑注释等。

31610
领券