Создать базу данных членства MVC4 - PullRequest
7 голосов
/ 25 января 2012

Я знаком с aspnet_regsql.exe для создания базы данных членства (она создает 11 таблиц)

Однако в моем проекте MVC4 VS2010 создал базу данных членства всего с шестью таблицами (Приложения, Членство, Профили,Roles, Users & UsersInRoles)

Как мне создать базу данных с этой (новой?) Схемой?

Ответы [ 3 ]

4 голосов
/ 08 ноября 2012

Все, что вам нужно сделать, это:

измените ваш web.config так, чтобы он указывал на соединение, которое вы хотите

<add name="DefaultConnection" connectionString="uid=****;pwd=*****;server=(local);database=****" providerName="System.Data.SqlClient" />

Проверка фильтров \ InitializeSimpleMembershipAttribute.cs

Строка 41 должна гласить:

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);

Обратите внимание, что для autoCreateTables задано значение true и задано имя соединения, установленное вами в файле web.config.

Теперь, когда пользователь регистрируется, он будет смотреть на базу данных, которую вы настроили. Если таблицы еще не существуют, они будут созданы.

2 голосов
/ 01 февраля 2012

aspnet_regsql.exe является частью архитектуры ASP.Net, а не MVC.

Уверен, что в состав предварительного просмотра MVC4 входит несколько пользовательских сценариев схемы или версия предварительного просмотра.новой установленной версии ASP.Net 4.5 aspnet_regsql.exe.

Если последнее верно, вы можете использовать это для создания базы данных и привязать ее к своим MVC3 (и предыдущим) приложениям.Смысл здесь заключается в том, что из-за различий в схеме вам, вероятно, потребуется написать своих собственных провайдеров.

Другой вариант - создать базу данных с шаблоном MVC4, удалить проект и кодировать слой DA вMVC3 проект, который использует базу данных.Все, что вам нужно захватить, это строка подключения.Но опять же, вам придется свернуть своих собственных провайдеров, так как старые не будут знать новую схему 6 таблиц.

2 голосов
/ 25 января 2012

Вы должны добавить несколько аргументов для установки компонентов: http://msdn.microsoft.com/en-us/library/ms229862(v=vs.80).aspx

Вы можете запустить Aspnet_regsql.exe без аргументов командной строки, чтобы запустить мастер, который проведет вас через установку.

Какие таблицы отсутствуют и какие таблицы были созданы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...