2009-06-20 157 views
1

我剛剛部署了一個ASP.NET網站,我的託管服務提供商,但我不斷收到以下錯誤,當我嘗試登錄:問題與ASP.NET成員資格提供

SQLExpress database file auto-creation error: The connection string specifies a local Sql Server Express instance using a database location within the applications App_Data directory.

我已經在主機上設置具有所需架構的數據庫,甚至可以從我的開發機器登錄主數據庫,但不能登錄託管站點本身。我的供應商配置如下:

<connectionStrings> 
    <add name="Membership" connectionString="data source=localhost;initial catalog=bkelly_aspnetdb;user id=withheld; password=withheld;" /> 
</connectionStrings> 
<system.web> 
    <membership defaultProvider="SqlMembershipProvider"> 
    <providers> 
     <clear/> 
     <add name="SqlMembershipProvider" 
      type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
      connectionStringName="Membership" 
... 

我覺得沒有什麼那建議使用App_Data文件DB站點級別,但肯定該指令應該理清任何機器級提供商的配置?

+0

你可以發佈你正在使用確切的連接字符串? – 2009-06-20 19:01:09

+0

@s_ruchit,我已經更新了一些連接字符串,但是如果你能告訴我人們在網上發佈他們確切的連接字符串的位置,我會給你一些我所賺的錢。 ;-) – ProfK 2009-06-20 20:42:42

回答

1

不是100%,但嘗試添加

<clear/> 

...你把你的connectionStrings節之前:

<connectionStrings> 
    <clear/> 
    <add name="Membership" connectionString="data source=localhost;initial catalog=bkelly_aspnetdb;user id=withheld; password=withheld;" /> 
</connectionStrings> 
0

可能問題是文件所在的磁盤被壓縮。 這會產生您遇到的錯誤

0

在單聲道下,您必須在您的配置中將「SqlMembershipProvider」文本替換爲其他內容(除非是其他內容)。我不認爲你的主機使用單聲道,但值得一試。在這個