所遇問題:
這兩天在學習ASP.NET用戶與角色管理方面的知識。在使用ASP.NET Membership這個框架時,在進入Visual Studio 2005的“網站”菜單的“ASP.NET 配置”后,點擊“安全”后,出現如下的出錯信息:“選定的數據存儲區出現問題,原因可能是服務器名稱或憑據無效,或者權限不足。也可能是未啟用角色管理器功能造成的。請單擊下面的按鈕,以重定向到可以選擇新數據存儲區的頁。
下面的消息可能會有助于診斷問題: 無法連接到 SQL Server 數據庫。 ”
測試“AspNetSqlProvider”,出現如下的出錯信息:
未能建立數據庫連接。
如果尚未創建 SQL Server 數據庫,請退出網站管理工具,使用 aspnet_regsql 命令行實用工具創建和配置數據庫,然后返回到此工具以設置提供程序。
系統配置:Windows xp sp2 + IIS5.1 + Visual Studio 2008 + SQL Server 2005(默認實例)
解決辦法:(按如下步驟操作即可解決)by Archerlu(飛龍在天) (已被我稍作修改)
1、打開SDK 命令提示(所有程序——Microsoft .NET Framework SDK v2.0——SDK 命令提示。也可打開VS的命令提示),輸入aspnet_regsql,彈出ASP.NET SQL Server 安裝向導,點下一步,點“為應用程序服務配置 SQL Server”,點下一步,數據庫用<默認>(aspnetdb),點下一步,完成。
2、打開Visual Studio 2005,依次:工具-->選項-->數據庫工具-->數據連接-->SQL Server實例名稱(默認為空),改為你的服務器名稱(默認實例的名稱即為你的計算機名稱)。
3、還是Visual Studio 2005,工具-->連接到數據庫-->服務器名(輸入剛才的服務器),可以按你要求選擇Windows或SQL Server身份驗證,然后數據庫選擇剛才的aspnetdb。測試OK后,點“高級”,復制對話窗口的最下面一行語句(比如,如果你之前選擇“使用SQL Server身份驗證”,則復制出來的語句類似為Data Source=Server;Initial Catalog=aspnetdb;User ID=sa)
4、打開IIS:默認網站-->屬性-->ASP.NET-->編輯全局配置-->常規-->點擊“連接字符串管理器”的“LocalSqlServer”后,點編輯,然后清除里面的字符串,再粘貼第3步所復制的字符串,如果你第3步是選擇SQL Server身份驗證的,還需在后邊再手動輸入“;Password=sa”,當然,后面的sa用你的密碼替換,然后確定,如果第3步是Windows身份驗證的,則粘貼后直接確定保存即可 -->應用。(如果第3步是選擇SQL Server身份驗證的,則修改后的連接字符串類似為Data Source=Server;Initial Catalog=aspnetdb;User ID=sa;Password=sa)
5、還是在IIS:默認網站-->屬性-->ASP.NET-->編輯全局配置-->身份驗證-->選定"啟用角色管理"-->確定。