Не удается создать базу данных членства asp.net aspnetdb

Кажется, я не могу создать aspnetdb.mdf с помощью инструмента администрирования веб-сайта. Я использую SQL Express 2008 и Visual Studio Web Developer 2010 Express. Я получаю следующую ошибку в инструменте администрирования:

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

Следующее сообщение может помочь в диагностике проблемы: Произошла ошибка во время выполнения файла SQL «InstallCommon.sql». Номер ошибки SQL — 5170, а сообщение SqlException: Невозможно создать файл «C:\USERS**\DOCUMENTS\VISUAL STUDIO 2010\WEBSITES\BUGZ-B-GONE\APP_DATA\ASPNETDB_TMP.MDF», поскольку он уже существует. Измените путь к файлу или имя файла и повторите операцию. СОЗДАТЬ БАЗУ ДАННЫХ не удалось. Некоторые перечисленные имена файлов не могут быть созданы. Проверьте связанные ошибки. Создание базы данных ASPNETDB_97c73957a1fb4a189ccca0449aa7d754...

Я также получаю эту ошибку, когда удаляю файл mdf или меняю путь.

Ниже находится файл web.config:

<configuration>
  <connectionStrings>
   <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
   <add name="DATABASEConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DATABASE.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <system.web>
    <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      </assemblies>
    </compilation>
    <authentication mode="Forms">
      <forms loginUrl="~/Account/Login.aspx" timeout="2880"/>
    </authentication>
   <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>
    <profile>
      <providers>
        <clear/>
        <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
      </providers>
    </profile>
    <roleManager enabled="true">
      <providers>
        <clear />
        <add connectionStringName="ApplicationServices" applicationName="/"
          name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" />
        <add applicationName="/" name="AspNetWindowsTokenRoleProvider"
          type="System.Web.Security.WindowsTokenRoleProvider" />
      </providers>
    </roleManager>
  </system.web>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>

person bart_dp    schedule 18.08.2012    source источник


Ответы (1)


Ваша ошибка говорит о том, что база данных уже присутствует, поэтому сначала удалите ее, а затем запустите WSAT. Если не работает, удалите файл web.config и добавьте новый файл конфигурации в свой проект, а затем запустите WSAT и добавьте базу данных aspnetdb.

Также вы можете попробовать aspnet_regsql

Путь: C:\Windows\Microsoft.NET\Framework\v4.0.30319

Запустите его, после чего вы сможете добавлять или удалять таблицы базы данных AspNet из вашей базы данных. Подробнее читайте в MSDN.

person Waqar Janjua    schedule 18.08.2012