Beispiel #1
0
        public string DeleteAccount(DeleteAccModel model)
        {
            if (model != null)
            {
                var user = userManager.FindByIdAsync(model.Id).Result;

                if (user != null && userManager.CheckPasswordAsync(user, model.Password).Result)
                {
                    var name    = user.UserName;
                    var surname = user.Surname;
                    var delete  = userManager.DeleteAsync(user).Result;

                    if (delete.Succeeded)
                    {
                        var obj = database.Users.Get(x => x.IdenityId == model.Id).Result;
                        database.Users.Delete(obj);
                        database.Save();
                        FileManagment.RemoveFolder(model.Id);
                        return(new string($"User {name} {surname} account was deleted cause of {model.Reason} "));
                    }
                    else
                    {
                        throw new AccountException("Removal failed");
                    }
                }
                else
                {
                    throw new AccountException("Password was not confirmed");
                }
            }
            else
            {
                throw new AccountException("Delete model is null");
            }
        }