Почему мы должны AllowAnonymous в рамках идентификации .NET при создании нового пользователя (ApplicationUser) - PullRequest
0 голосов
/ 15 ноября 2018

Когда я создаю нового пользователя, используя userManager функцию создания структуры идентификации, она не работает (сгенерировать исключение), потому что она не вызывает onModelCreating идентификатора Context.Хотя, если я allAnonymous для класса контроллера, он работает нормально.

Теперь создающий новый пользователь выдаст исключение, что tenant_id не обнуляется в моей базе данных.Но когда я разрешаю Anonymous на контроллере этого сервиса, он создает пользователя.Код:

                    var currentThread = Thread.CurrentPrincipal as CustomPrincipal;
                    var dataBaseConnection = currentThread.TenantInfo.DbConnection;
                    var dbConnection = dataBaseConnection.GetSqlConnForDbName();
                    var context = new IdentityContext(dbConnection, true);
                    var userStore = new ApplicationUserStore(context);
                    var _userManager = new ApplicationUserManager(userStore) { PasswordHasher = new PasswordHashHelper() };


                    ApplicationUser user = new ApplicationUser()
                    {
                        UserName = userModel.UserName,
                        Tenant_ID = 1,
                    };
                    _userManager.Create(user);
...