Asp.net

“連接字元串指定了一個本地 Sql Server Express 實例”,但它沒有

  • April 16, 2013

我正在嘗試將 asp.net 應用程序部署到使用 SQL Server 實例作為 ApplicationServices 成員資格數據庫的伺服器。

問題是,我收到一條錯誤消息

連接字元串使用應用程序 App_Data 目錄中的數據庫位置指定本地 Sql Server Express 實例

當我最初嘗試aspnetdb.mdf使用應用程序部署自身時出現此錯誤。

當我放棄該計劃並決定進行web.config轉換以便在調試中使用 Express 數據庫時,我遇到了這個錯誤,但在發佈時,連接字元串會轉到 SQL Server。

當我出於好奇決定從程式碼中刪除對 express 數據庫的所有引用時,我再次遇到此錯誤,因此不可能有任何方法可以查找 Express 數據庫。沒運氣。

有人對此有任何想法嗎?我每次都在 IIS 中刪除並重新安裝了該網站,注意到沒有部署 App_Data 並且沒有提及 web.config 中的 .mdf 文件 - 無濟於事。它仍然認為有一個連接字元串告訴它尋找 SQL Server Express 數據庫:/

**編輯:**這是我正在使用的連接字元串。相當標準,我認為,但我可能總是錯的。

Data source=HERP;Initial Catalog=DERP;Integrated Security=True

錯誤是否可以引用machine.config文件中的預設連接字元串(那個LocalSqlServer)?考慮到預設成員資格提供程序使用此連接字元串,這可能會發生:

以下預設成員資格元素在 Machine.config 文件中配置

$$ … $$: <membership>

<providers>

<add name="AspNetSqlMembershipProvider" [...]

connectionStringName="LocalSqlServer" [...]

不要忘記先清除連接字元串:

<connectionStrings>
  <clear />
  <add name="LocalSqlServer" connectionString="Data Source=(local);Initial Catalog=aspnetdb;Integrated Security=True" providerName="System.Data.SqlClient"/> 
</connectionStrings>

引用自:https://stackoverflow.com/questions/8596953