asp.net-mvc - User.Identity.GetUserId() 在我的所有控制器上返回 null
问题描述
在我的所有控制器中,User.Identity.GetUserId()
返回 null。
我的用户是自定义用户,定义是:
public class ApplicationUser : IdentityUser, IPrincipal
{
public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager,
string authentificationType)
{
// Notez qu'authenticationType doit correspondre à l'élément défini dans CookieAuthenticationOptions.AuthenticationType
var userIdentity = await manager.CreateIdentityAsync(this, authentificationType);
// Ajouter les revendications personnalisées de l’utilisateur ici
var nameIdentifierClaim = new Claim(ClaimTypes.Name, Id);
userIdentity.AddClaim(nameIdentifierClaim);
return userIdentity;
}
public bool IsInRole(string role)
{
return false;
}
public IIdentity Identity { get; private set; }
public bool AccessEnabled { get; private set; }
/// <summary>
/// Définition de l'identité de l'utilisateur
/// </summary>
public void DefineIdentity()
{
Identity = new GenericIdentity(Id);
}
}
我不明白为什么 User.Identity.GetUserId() 总是为空:(
谢谢,
查理
解决方案
推荐阅读
- java - 处理长时间运行的清理逻辑以响应 Netty channelInactive 事件的正确方法?
- sql - 如何设计自定义窗口函数以在pyspark数据框的时间窗口内选择列值
- r - R 中的 system() 函数中的“输入”参数有什么作用?
- typescript - Typescript 断言签名和承诺
- java - 这段代码有什么样的循环错误以及如何修复它?
- macos - macOS:如何使用终端在启动后重定向进程的 STDERR / STDOUT?
- azure - 用于 msticpy QueryProvider 的 Jupypter 笔记本中的 SyntaxError
- c - mpz_tdiv_q_2exp 上的 GMP 段错误
- azure - 配置应用服务证书似乎需要对 Key Vault、IBYP 的写入权限?
- azure - Azure VM:如何免费使用 VM B1s OS Disk?