Visual Studio 2019 & Asp.Net Core 3.0
Настройка аутентификации Jwt на примере кода Asp.Net Core 3.0
Я просто пишу свой код следующим образом.
Но я меняю метод реализации
public interface IUserService
{
Task<UserClaim> Authenticate(String username, String password);
Task<UserClaim> SingleAsync(String username);
IEnumerable<UserClaim> GetAll();
}
public class User
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Int32 Id { get; set; }
[StringLength(100)]
public String Name { get; set; }
[StringLength(60)]
public String Password { get; set; }
public UserClaim ConvertToUserClaim()
{
return new UserClaim()
{
Id = this.Id,
Name = this.Name
};
}
}
public class UserClaim
{
public Int32 Id { get; set; }
public String Name { get; set; }
}
Это изменение исчерпало два дня моей жизни.
var claimsIdentity = this.User.Identity as ClaimsIdentity;
var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
userId всегда будет нулевым, пока я не скачаю ранее упомянутую ссылку ипроверяйте кодовое слово за словом.
, а затем я заменил все UserClaim на User.
userId наконец-то получил ожидаемое значение.
Вопрос: почему это так?