web.config и членская база данных - от разработки до производства

Я пытаюсь разместить свой первый проект ASP.NET, после первоначальной загрузки через FTP я получил ошибки SQL-соединения, поэтому после некоторого поиска я решил, что это моя строка подключения, поэтому я исправил ее, правильно указав информацию о своих хостах:

 <add name="orangefreshConnectionString1" connectionString="Data Source=<server>;Initial Catalog=<catalog>;User Id=<user>;Password=<pwd>;" providerName="System.Data.SqlClient" />

Так что это решило мою проблему, мой веб-сайт сейчас работает... за исключением того, что при попытке войти я получаю еще одну ошибку подключения SQL.

Я использую 2 базы данных на моем сайте: dbstart и ASPNETDB (последняя для членства)

ASPNETDB обрабатывается в моей разработке web.config как: поставщики>

      <clear />
      <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
  </providers>

Я знаю, что здесь нужно что-то изменить, но мои запросы в Google пока не помогли найти ответ...

Вот мой контент web.config для разработки:

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <connectionStrings>
    <add name="orangefreshConnectionString1" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\orangefresh.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />
    <add name="orangefreshEntities" connectionString="metadata=res://*/App_Code.Orangefresh.csdl|res://*/App_Code.Orangefresh.ssdl|res://*/App_Code.Orangefresh.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\SQLEXPRESS;attachdbfilename=|DataDirectory|\orangefresh.mdf;integrated security=True;user instance=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
  <system.web>
    <customErrors mode="Off"/>
      <membership>
          <providers>
              <clear />
              <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
          </providers>
      </membership>
    <roleManager enabled="true" />
      <authentication mode="Forms">
          <forms loginUrl="default.aspx"></forms>
      </authentication>
    <pages theme="orangefresh" />
    <compilation debug="false" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Data.Entity.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
      </assemblies>
      <buildProviders>
        <add extension=".edmx" type="System.Data.Entity.Design.AspNet.EntityDesignerBuildProvider" />
      </buildProviders>
    </compilation>
    <httpRuntime requestValidationMode="2.0" />
  </system.web>
  <system.net>
    <mailSettings>
      <smtp deliveryMethod="Network" from="João &lt;email@email.com&gt;">
        <network host="host" userName="user" password="pass" />
      </smtp>
    </mailSettings>
  </system.net>
    <location path="Management">
        <system.web>
            <authorization>
                <allow roles="Admin"/>
                <deny users="*"/>
            </authorization>
        </system.web>
    </location>
</configuration>

Как я могу правильно обратиться к моей базе данных членства на web.config?

2 ответа

Решение

Изменить внутри этого:

<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>

connectionStringName="LocalSqlServer"

в

connectionStringName="orangefreshConnectionString1" 

или же

connectionStringName="orangefreshEntities"

Я не могу сказать, какое соединение вы используете для чего, но вот что изменилось.

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

Другие вопросы по тегам