Как видно из заголовка, как мне обновить сохраненное значение в моей заявке?И я искал через Интернет, способ, которым я обновляюсь, должен использовать ApplicationDbContext
, вот как я сохраняю претензию
var user = await repository.GetActiveUserByUsernameAsync(username);
if (user != null)
{
if (MyHasher.Verify(password, user.Password))
{
var principal = new ClaimsPrincipal();
var claims = new List<Claim>
{
new Claim("UserId", user.Id.ToString()),
new Claim("UserDisplayName", user.DisplayName)
};
principal.AddIdentity(new ClaimsIdentity(new GenericIdentity(username, "Username"), claims));
return Result.Ok(principal);
}
}
Я делаю расширение Identity для получения текущего сохраненного значения претензии
пример для Get UserDisplayName
public static string GetUserDisplayName(this IIdentity identity)
{
if (identity == null)
{
throw new ArgumentNullException(nameof(identity));
}
var ci = identity as ClaimsIdentity;
string userDisplayName = string.Empty;
if (ci != null)
{
userDisplayName = ci.FindFirst(ClaimType.UserDisplayName)?.Value ?? string.Empty;
}
return userDisplayName;
}
Причина, по которой я хочу обновлять значение сохраненной заявки, всякий раз, когда я обновляю свой профиль, я также обновляю значение претензии.
Как можноЯ делаю это?
Спасибо, прежде чем