2016-01-06 3 views
0

Я впервые использовал Entity Framework Database для создания веб-сайта в ASP.NET на Visual Studio 2015. После создания базы данных Visual Studio создала веб-сайт шаблона MVC для редактирования, в котором была аутентификация , Он использует Identity. Я теперь понимаю, что Identity хранит его таблицы в другой базе данных, чем та, что хранятся в таблицах. Когда я изменяю целевую базу данных для идентификации, при запуске сайта я получаю сообщение об ошибке, заявляя, что приложения не являются в моей модели.Идентификация ASP.NET в неправильной базе данных

Есть ли способ переместить идентификатор в mydatabase вместо defaultconnection и обновить мою модель автоматически?

ответ

0

Identity использует localdb как хранилище по умолчанию. Если вы хотите использовать другую машину для хранения данных, вы можете попытаться изменить только строку подключения, а также проверить, установлена ​​ли на этом компьютере SQLExpress или более поздняя версия MS SQL и не забывайте, что вы запускаете свой сценарий миграции (просто убедитесь, что вы есть все необходимые таблицы), но я не уверен, что это сработает.

Если вы хотите использовать другое хранилище дб (MySQL или SQLite, например) вы должны реализовать собственного поставщика для Identity, потому что реализация Microsoft по умолчанию использует MS SQL базу данных и, как я сказал выше, это зависит от localdb. Identity также использует EntityFramework внутри, поэтому это не составит труда. Если вы решите сделать это, вы можете увидеть пример на github. Это очень простой и основанный на One user - one role модели

Надеюсь, что поможет

Смежные вопросы