Mina Nady Sarofem Ответов: 2

Как я могу объединить контекст идентичности и мой контекст?


Привет,

Я совершенно новичок в MVC и EF. Я создал свой проект MVC и выбрал опцию однопользовательской аутентификации при создании проекта, а visual studio создала
public class ApplicationDbContext: IdentityDbContext<ApplicationUser>
Затем я создал свой собственный контекст, чтобы управлять своим бизнесом.

Мой вопрос таков: могу ли я объединить эти 2 контекстных класса в один контекстный класс и как? Таким образом, я могу выполнить миграцию в одном контексте, а не обрабатывать это для 2 классов



спасибо всем.

Что я уже пробовал:

я не знаю точно, что делать.

Gerry Schmitz

Да. Вы собираете фрагменты знаний и еще не имеете полной картины или того, как все развивается. см. решение 1.

2 Ответов

Рейтинг:
2

Afzaal Ahmad Zeeshan

Существует причина, по которой они хотят, чтобы вы создали свой собственный контекст и класс для управления и обработки своей бизнес-логики.

Только представьте себе, что произойдет, если Microsoft отправит обновление и это изменит большую часть кода (если не весь) из IdentityDbContext<T> тип. Можете ли вы позволить себе такое разрушительное изменение? Потому что теперь у вас есть все внутри одного файла, и этот файл может быть легко изменен обновлением для среды выполнения/платформы или пакета.

Я не мог справиться с незначительными изменениями, которые они внесли обратно ASP.NET ядро 1.1 - ASP.NET ядро 2.0. я не мог, и вижу, что это то, что произошло тогда, Миссия невыполнима: перенос .NET Core 1.x на 2.0[^].

Вот почему я рекомендую хранить несколько контекстов, в этом нет никакого вреда, и для нормального более чем личного проекта обычно существует несколько контекстов, каждый из которых обрабатывает свою собственную цель и подключение к базам данных.

Вы можете попробовать и поделиться своим опытом здесь, на CodeProject, я хотел бы прочитать, что происходит! :)


Рейтинг:
0

Mina Nady Sarofem

Привет Afzaal,

Спасибо за разъяснение. Я просто хотел знать причину и лучшие практики для этого момента. Я собираюсь оставить все как есть и продолжить практику над своим проектом.


спасибо снова :)