Основний реєстрація користувача
У цьому розділі ми обговоримо реєстрацію користувача. Тепер у нас є робоча база даних, і настав час, щоб почати додавати деякі з функцій в додатку. Ми також налаштовані наш додаток і ми маємо робочу схему бази даних. Перейдемо тепер до домашньої сторінці додатка.
Відкрити інструменти розробника, натиснувши клавішу F12, а потім натисніть кнопку Змінити. Раніше, коли ми натиснули на посилання Edit, рамки MVC виявити присутність Authorize атрибута і повертається код статусу 401. оскільки користувач не увійшов в систему.
Тепер ви побачите, що ми отримуємо повідомлення на екрані з конфігураційного файлу.
Перейдемо тепер до інструментів розробника.
Так що десь всередині рамки MVC, код 401 статус був згенерований.
Структура ідентичності знає, що користувач повинен спробувати увійти, перш ніж він може досягти цього ресурсу.
Це настроюється кінцева точка зі структурою ідентичності, в автозавантаження, коли ви входите ці послуги і проміжне програмне забезпечення. Є різні варіанти, які можна встановити і один з варіантів, щоб змінити URL входу.
За замовчуванням URL буде / Account / Увійти. В даний час у нас немає контролера рахунку, тому в кінцевому рахунку те, що ми хочемо зробити, це створити контролер рахунки і дозволяє користувачеві увійти в систему.
Але до того, як користувачі можуть навіть увійти, їм потрібно буде зареєструватися на сайті і зберегти їх імена користувачів і паролі.
І Логін і функція регістра можуть бути частиною контролера рахунку.
Давайте тепер рухатися вперед і додати новий клас в папці Controllers, і називають його AccountController. Ми виведемо це з базового класу Controller рамкової MVC.
Тепер ми повинні створити функцію, де користувач може зареєструватися на цьому сайті.
Він буде дуже схожий на форму редагування.
Коли користувач хоче зареєструвати, ми спочатку відобразити форму, що дозволяє їм заповнити необхідну інформацію. Потім вони можуть завантажити цю форму на сайті.
Ця інформація потім зберігаються в базі даних.
Давайте створимо дію, яке буде повертати вид, коли ми йдемо до / рахунок / зареєструватися.
Нам не потрібно шукати щось, користувач буде надавати всю інформацію, яка нам потрібна. Перед тим, як побудувати ViewModel для цієї точки зору, ми повинні вирішити, на інформації, яка буде відображатися вид. Ми також повинні вирішити, на інформації, яку нам потрібно буде отримати від користувача?
Давайте створимо модель уявлення для цього сценарію, додавши новий клас в файлі AccountController.cs і називаємо це RegisterViewModel.
Давайте створимо деякі властивості, які будуть містити ім'я користувача, пароль, а також в ConfirmPassword користувача, ввівши його в два рази, і переконавшись, що обидва паролі збігаються, як показано в наступній програмі.
У наведеному вище клас, ви можете побачити деякі інструкції, які можуть допомогти нам перевірити цю модель. Потрібно ім'я користувача тут, і якщо ви подивіться на схему бази даних, стовпець провести ім'я користувача довжиною 256 символів.
Ми також будемо застосовувати атрибут MaxLength тут.
Пароль буде вимагатися, і коли ми надаємо вхід для цього пароля, ми хочемо. щоб тип входу. щоб мати Type Password. так що символи не відображаються на екрані.
Confirm Password також буде в DataType пароль. а потім є додатковий атрибут порівняння. Ми будемо порівнювати поле ConfirmPassword з цим іншим властивістю, що ми можемо вказати, що поле пароля.
Давайте тепер створити уявлення, що нам потрібно. Нам потрібно буде додати нову папку думки і назвати його рахунку, тому всі уявлення, пов'язані з AccountController будуть додані в цю папку.
Тепер, клацніть правою кнопкою миші на папці облікового запису і виберіть Додати → Новий пункт.
Видалити всі існуючі коди з файлу Register.cshtml і додайте наступний код.
Тепер ви можете бачити, що ми визначили модель як RegisterViewModel, яку ми тільки що створили.
Ми також задати заголовок для цієї сторінки за допомогою ViewBag і ми хочемо, щоб назва бути Register.
Крім того, необхідно створити форму, яка містить поля для Ім'я користувача, Пароль і ConfirmPassword.
Ми також включили DIV, який буде відображати резюме перевірки. Коли ми використовуємо резюме перевірки ASP, ми повинні вказати, які помилки з'являються в короткому викладі.
Ми можемо мати все помилки з'являються в області зведення, або ми можемо сказати ValidationSummary.ModelOnly і єдині помилки, які з'являються від моделі перевірки всередині резюме будуть помилки перевірки, пов'язані з моделлю, а не специфічною властивістю ця модель.
Іншими словами, якщо користувачі не заповнюйте його ім'я, але потрібно ім'я користувача, і буде помилка перевірки для цього конкретного об'єкта нерухомості.
Але ви також можете генерувати помилки моделі, які не пов'язані з певним властивістю, і вони будуть з'являтися в цьому ValidationSummary.
усередині