<p>今天,使用ASP.NET创建一个用户管理系统时,拖入一个Login控件,在浏览器中不能正常进行登录操作,而是出现了 Unable to connect to SQL Server database. 错误。</p>
问题分析:Membership是必须放在SQL数据库中的,所以如果SQL数据库中没有这个数据库,就不能正常进行用户登录操作。
问题解决方法:
- 创建aspnetdb数据库:运行 aspnet_regsql.exe (路径:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe) 来安装membership所要建立的数据库。
- 配置Web.config配置文件:这里可以是机器的(C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config)也可以是自己创建的网站的,我的做法是修改自己网站的,毕意我现在的控制力不强,修改自己网站的可以保证不出大问题。
要注意<connectionstrings> ... </connectionstrings>这个节点。
<connectionStrings> <!--关键是下面这两个,"remove"表于从连接字符串集合中移除对继承的连接字符串的引用。 "add"则是'ASPNETDB'数据库的连接字符串,注意如果是SQLExpress数据库则Data Source=(local)\SQLExpress --> <remove name="LocalSqlServer" /> <add name="LocalSqlServer" connectionString="Data Source=localhost;Initial Catalog=aspnetdb;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings>
- 重新运行网站,就发现,问题已经成功解决!