Информация о членстве не сохраняется в моем измененном aspnetdb - PullRequest
2 голосов
/ 19 июля 2011

Привет, у меня в приложении mvc3 есть aspnetdb с дополнительной таблицей, которую я создал для хранения имени и адреса. Когда я регистрирую пользователя, моя таблица обновляется, но таблицы членства asp не создают пользователя, кроме того, когда я запускаю конфигурацию asp.net, она говорит, что пользователи, которых я создаю, существуют, но их нет в моей базе данных, поэтому они должны быть в другом, хотя это единственная база данных, работающая на моем сервере.

Мой конфиг выглядит так:

<connectionStrings>
<add name="ApplicationServices"
     connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;
     AttachDBFilename=|DataDirectory|LJM.Models.LJMDB.mdf;User Instance=true"
     providerName="System.Data.SqlClient" />
 </connectionStrings>

<membership>
  <providers>
    <clear/>
    <add name="AspNetSqlMembershipProvider" 
         type="System.Web.Security.SqlMembershipProvider"
         connectionStringName="ApplicationServices"
         enablePasswordRetrieval="false" enablePasswordReset="true"
         requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
         maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" 
         minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
         applicationName="/" />
  </providers>
</membership>

Мой регистрационный код вроде этого:

MembershipCreateStatus createStatus;
MembershipUser aUser = Membership.CreateUser(model.UserName, 
                                             model.Password, 
                                             model.Email,
                                             null, null, true, null,
                                             out createStatus);

model.uDetails.userid = new Guid(aUser.ProviderUserKey.ToString());
LJMDB aDB = new LJMDB();
aDB.Users.Add(model.uDetails);
aDB.SaveChanges();

if (createStatus == MembershipCreateStatus.Success) {... }

CreateStatus - это успех. Я действительно не понимаю, почему asp не записывает эту информацию в мою базу данных, когда строка подключения выглядит хорошо. Любая помощь в этом или как я мог найти эту тайную базу данных будет очень признателен. Спасибо :) JM

Ответы [ 2 ]

0 голосов
/ 19 июля 2011

Хорошо, я сделал это, но получил другую ошибку: «Невозможно открыть базу данных, запрошенную при входе в систему. Ошибка при входе в систему. Ошибка входа в систему для пользователя». Итак, я изменил строку подключения ... <configuration> <connectionStrings> <add name="ApplicationServices" connectionString="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=aspnetdb;Data Source=.\SQLEXPRESS" providerName="System.Data.SqlClient" /> </connectionStrings>, и теперь все работает, отлично!и спасибо :)

0 голосов
/ 19 июля 2011

Попробуйте удалить пользовательский экземпляр = true из конфигурации?

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