Asp.net
如何修復“在應用程序配置中找不到連接名稱’LocalSqlServer’或連接字元串為空。”錯誤?
我有一個使用 SQL Server CE 4.0 和 Entity Framework 4.0 的 ASP.NET 項目。它在我的本地電腦上執行良好。
但是,當我將其移動到遠端伺服器並嘗試登錄到程序的管理部分時,我收到以下錯誤:
The connection name 'LocalSqlServer' was not found in the applications configuration or the connection string is empty.它引用遠端伺服器上 machine.config 中的以下行:
Line 237: <membership> Line 238: <providers> Line 239: <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="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" /> Line 240: </providers> Line 241: </membership>現在,確實我的 web.config 中沒有引用名為“LocalSqlServer”的連接字元串的“AspNetSqlMembershipProvider”語句。相反,我有以下內容:
<membership defaultProvider="DefaultMembershipProvider"> <providers> <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider" connectionStringName="PUGConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" applicationName="/" /> </providers> </membership>這實際上在本地有效。連接字元串的名稱是 PUGConnection,而不是 LocalSqlServer。
為什麼這會在本地而不是遠端工作?(遠端伺服器是共享伺服器——我無權訪問 machine.config。)
如果我將連接字元串的名稱更改為 LocalSqlServer,它會起作用嗎?如果是這樣,為什麼它會在我的本地電腦上以另一種方式工作?據我所知,我本地電腦上的 machine.config 看起來與遠端伺服器上的相同。
您需要將其從配置中刪除:
<remove name="AspNetSqlMembershipProvider" />或者,更好的是,
<clear />
您也可以嘗試將連接字元串添加到您的配置文件中。即使不使用它,它也應該通過在配置中的其他位置引用它來修復出現的錯誤。
<connectionStrings> <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/> </connectionStrings>這通常在
appSettings和system.data標籤之間。