今天嘗試用CreateUserWizard控件連接數據庫,出現的錯誤如下:
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。
SQLExpress 數據庫文件自動創建錯誤:
連接字符串使用應用程序 App_Data 目錄中的數據庫位置指定了一個本地 SQL Server Express 實例。由於提供程序確定應用程序服務數據庫不存在,因此試圖自動創建該數據庫。要成功檢查應用程序服務數據庫是否存在並自動創建應用程序服務數據庫,必須滿足下列配置要求:
如果應用程序 App_Data 目錄不存在,則 Web 服務器帳戶必須具有對應用程序目錄的讀寫訪問權限。這是因爲如果不存在 App_Data 目錄,Web 服務器帳戶將會自動創建它。
如果應用程序 App_Data 目錄已存在,則 Web 服務器帳戶只要求對應用程序 App_Data 目錄的讀寫訪問權限。這是必要的,因爲 Web 服務器帳戶將嘗試確認 SQL Server Express 數據庫已在應用程序 App_Data 目錄中。如果從 Web 服務器帳戶撤消對 App_Data 目錄的讀訪問權限,提供程序便無法正確地確定 SQL Server Express 數據庫是否已存在。如果提供程序試圖創建已存在的數據庫的副本,就會出錯。寫訪問權限是必需的,因爲創建新數據庫時需要使用 Web
服務器帳戶憑據。
計算機上必須安裝 SQL Server Express。
Web 服務器帳戶的進程標識必須具有本地用戶配置文件。有關如何爲計算機帳戶和域帳戶創建本地用戶配置文件的詳細信息,請參見自述文檔。
-----------------------------------------------------------------------------------
(2)輸入完命令以後按下回車鍵,彈出“ASP.NET SQL server安裝嚮導”對話框。
(3)單擊【下一步】按鈕,在彈出的“選擇安裝項”對話框中,選擇“爲應用程序服務配置SQLServer”選項,單擊【下一步】按鈕,彈出“選擇服務器和數據庫”對話框。
(4)在“服務器”文本框中輸入本機數據庫服務器名稱。在“數據庫”下拉列表框中選擇“默認”項,系統會自動創建一個名稱aspnetdb的數據庫。單擊【下一步】按鈕完成操作,數庫創建成功。系統在數據庫中會自動創建一些用戶表
(5)打開Web.confg文件,創建配置文件,代碼如下。
<connectionStrings>
<remove name="LocalSqlServer" />
<add name="LocalSqlServer" connectionString="Data Source=.;Integrated Security=True;Initial Catalog=aspnetdb"
providerName="System.Data.SqlClient" />
<add name="aspnetdbConnectionString1" connectionString="Data Source=. Initial Catalog=aspnetdb;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>