Ідентифікація в ASP.Net Core 2.1: Налаштування AccountController


90

Я встановив, ASP.NET Core 2.1але хоча я створив новий ASP.NET Core Web Applicationза ASP.NET Core 2.1допомогою Individual User AccountsStore user accounts in-appНе можу знайти AccountController або Views.

Я все ще можу зареєструватися та увійти без проблем, але я не можу знайти код для нього, він був присутній у версії 2.0.

введіть тут опис зображення


Я задав тут запитання, якщо ви зацікавлені відповісти: stackoverflow.com/questions/51728881/… . Я борюся з виходом із програми .NET Core 2.1 Identity Server 4. +1.
w0051977,

Відповіді:


74

Однією із змін у 2.1 були бібліотеки класу Razor, і ідентифікація за замовчуванням живе в одній із них у окремих шаблонах авторизації. Якщо ви хочете мати код у своїй програмі, щоб ви могли його налаштувати, ви можете викласти його за допомогою Visual Studio або за допомогою інструмента глобальної ліси. Дивіться цей посібник, як робити те й інше.


20
Я зміг генерувати файли cshtml, а не контролери. Керівництво про це не згадувало, будь-яка ідея, як згенерувати accountController?
user1085907

6
Ах, погано .. це як дизайнер у
підфайлі

15
чому ця річ є вдосконаленням ? Це робить речі надто заплутаними.
лян

93

ASP.NET Core 2.1 представив нову функцію під назвою Бібліотеки класів Razor, яка дозволяє створювати подання та сторінки як частину багаторазової бібліотеки. ASP.NET Core Identity було переміщено до такого RCL. Ви можете замінити це у своєму проекті:

  1. У Провіднику рішень клацніть правою кнопкою миші на проекті> Додати > Новий оброблений елемент .
  2. На лівій панелі діалогового вікна « Додати ліску» виберіть « Ідентичність» > « ДОДАТИ» .
  3. У діалоговому вікні ADD Identity виберіть файли, які потрібно замінити.
    1. За необхідності виберіть макет
    2. Виберіть або створіть клас контексту даних .
  4. Натисніть ДОДАТИ .

Для отримання додаткової інформації відвідайте документацію .


1
Вам потрібно клацнути правою кнопкою миші на проекті, а не на рішенні, щоб отримати "Новий
виріб

1
Це все ще не приносить у поле Контролер облікових записів повідомлення про те, що я додав налаштовані поля, як мені сказати, що вони потрібні мені в методі реєстрації.
rogue39nin

Ей, що, якщо я хочу замінити контролер замість сторінки бритви? Я використовую SPA, тому я не впевнений, чи можу я замінити контролер
Роберт Тірта,

7

Моє рішення - створити проект з .net core 2.0, а потім оновити фреймворк до 2.1 та всю залежність до останньої версії




2

Наскільки мені відомо, код AccountController переміщений на сторінки Razor (і їх код ззаду) і найкраще працює із застосуванням значень за замовчуванням, тому для налаштування коду ви можете створювати риштування (тобто створювати файли в потрібному місці) із нової мережі Проект Core 2.1, клацнувши правою кнопкою миші на проекті у Visual Studio 2017 та вибравши пункт Додати => Новий зведений елемент => Ідентифікація, який відкриє діалогове вікно вибору. Виберіть потрібні сторінки, і ось вам. Просто змініть потрібні сторінки та скопіюйте їх на те саме місце в проекті, що підтримує ідентифікацію, оскільки ці нові сторінки автоматично замінюють значення за замовчуванням. Це новий спосіб налаштувати автентифікацію / авторизацію за допомогою Identity, не впевнений, чи багато хто вважає цей значний прогрес!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.