Присвоение пользователя ошибке роли [дубликат]

У меня была такая же проблема, и хотя ответ TechZen действительно может быть потрясающим, мне было трудно применить мою ситуацию.

В конце концов я решил проблему, связав метку с помощью контроллера, указанного в разделе «Объекты» (выделенного на изображении ниже), а затем через File Owner.

Надеюсь, это поможет.

enter image description here [/g0]

10
задан Dreamcasting 20 May 2015 в 17:05
поделиться

3 ответа

Если, как и я, вы боретесь за то, чтобы работать над личным каркасом, не полностью оценив все входы и выходы, это может помочь. Я использовал эту строку, чтобы получить ссылку на пользователя:

var user = new ApplicationUser { UserName = ...

Это создает нового пользователя. То, что я должен был сделать, это использовать эту строку:

var user = UserManager.FindByEmail( ...

Затем вы можете сбросить пароль следующим образом:

string code = UserManager.GeneratePasswordResetToken(user.Id);
var result = UserManager.ResetPassword(user.Id, code, model.Password);

Обратите внимание, что проверка ошибок не выполняется.

1
ответ дан Andy Brown 21 August 2018 в 08:14
поделиться

С той же ошибкой прямо сейчас! Единственным актуальным недавним действием, которое я сделал, является обновление пакетов через NuGet:

  • EntityFramework 6.1.1 до 6.1.3
  • Microsoft ASP.NET IdentityCore 2.1.0to 2.2.1
  • Microsoft ASP.NET Identity EntityFramework 2.1.0 - 2.2.1
  • Microsoft ASP.NET Identity Owin 2.1.0 - 2.2.1

По-прежнему все еще исследует ...

UPDATE

В моем случае я пытался создать токен подтверждения перед сохранением пользователя. Я узнал, что UserManager.GenerateEmailConfirmationTokenAsync(userID) генерирует токен с сохраненным идентификатором, а не тот, который у вас есть в памяти.

Надеюсь, что это поможет.

6
ответ дан Liam 21 August 2018 в 08:14
поделиться
  • 1
    Я пытаюсь установить пароль перед созданием пользователя, и это вызывает ту же ошибку. Сначала вызовите CreateUser(User), а затем выполните свои операции с помощью токена подтверждения или паролей и т. Д. – Mike Upjohn 12 November 2015 в 12:43

Это исключение не генерируется классом Application User, в этом классе нет свойства с именем UserID. (его Id not UserId)

Итак, в таблице Identity есть две таблицы: столбец с UserID

  1. IdentityRole
  2. IdentityUserRole

Поэтому исключение возникает во вставке в этих таблицах, нет ничего плохого в ApplicationUser.Id. Убедитесь, что существует роль с именем «Пользователь». также проверьте регистр имен i.e. "User"/"user"

3
ответ дан Mujahid Daud Khan 21 August 2018 в 08:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: