Как установить правила для aspnetrules?
Привет Ребята,
Я немного запутался в том, как установить правила как "администратор", "клиент", "обычный пользователь" на AspNetRules
То, что я сделал, это:
1. Я создал проект MVC
2. сделал строку подключения с моей локальной СУБД sql server management studio
3. я выполнил приложение и создал первого пользователя, чтобы создать все таблицы в моей БД. Как вы можете видеть ниже
Что я уже пробовал:
Привет Ребята,
Я немного запутался в том, как установить правила как "администратор", "клиент", "обычный пользователь" на AspNetRules
То, что я сделал, это:
1. Я создал проект MVC
2. сделал строку подключения с моей локальной СУБД sql server management studio
3. я выполнил приложение и создал первого пользователя, чтобы создать все таблицы в моей БД. Как вы можете видеть ниже
См. Изображение
То, что я пробовал на контроллерах -- & gt; AccountController. cs
// // POST: /Account/Register [HttpPost] [AllowAnonymous] [ValidateAntiForgeryToken] public async Task Register(RegisterViewModel model) { if (!ModelState.IsValid) return View(model); var user = new ApplicationUser() { UserName = model.UserName }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { try { using (var dal = new DALEF.WebShopEntities()) { dal.Client.Add( new DALEF.Client{ CLI_Nom = model.Nom, CLI_Prenom = model.Prenom, CLI_Civilite = model.Civilite, CLI_Email = model.Email, CLI_Adresse = model.Adresse, CLI_CodePostal = model.CodePostal, CLI_Ville = model.Ville, CLI_Telephone = model.Telephone, CLI_AspUser_Id = user.Id }); dal.SaveChanges(); } } catch (Exception) { // client n'est pas ajouté delete l'asp user créé ModelState.AddModelError("", "Echec création client, veuillez réessayer"); return View(model); } //await UserManager.AddToRoleAsync(user.Id, "client"); await SignInAsync(user, isPersistent:false); return RedirectToAction("Index", "Home"); } else { AddErrors(result); } // If we got this far, something failed, redisplay form return View(model); }
Но когда я создаю нового пользователя, я получаю сообщение об ошибке:
Кликните сюда
Когда я проверяю БД, я вижу, что пользователь создан, но не правило.
Как я могу создавать правила? Просто очень простые правила, такие как" администратор "или" обычный пользователь", чтобы создать [авторизацию] для представлений.
Заранее спасибо.
Richard Deeming
Я исправил ссылку на ваш первый снимок экрана, в котором отсутствовала буква "-" в "netdna-cdn".
Ошибка, показанная на втором снимке экрана, означает, что вы не создали роль под названием "Клиент" в базе данных. Если вы посмотрите в dbo.AspNetRoles
в таблице вы увидите список ролей, которые вы уже создали. Вы можете добавлять пользователей только к ролям, которые отображаются в этой таблице.