今天調(diào)試了一個ASP.NET2.0的程序,程序原本是用的微軟的SQL Express版本,我就將它該承了我機(jī)器上的SQL Server2005企業(yè)版,并且將連接字符串也修改了。但是在連接字符串中保留了一個User Instance=True這個選項設(shè)置。結(jié)果程序死活都不走,會報一個錯誤:
Exception Details: System.Data.SqlClient.SqlException: The user instance login flag is not supported on this version of SQL Server. The connection will be closed.
我剛開始將這個保留的設(shè)置修改為False,但是還不行,說登錄數(shù)據(jù)庫失敗。最后我查了文檔才知道原來精簡版本的SQL服務(wù)器和完全版的有些差別,就是user instance ,這個只有在精簡版中才有,如果你的項目開始是用的精簡版,以后要遷移到完全版的SQL上,就會出現(xiàn)上述錯誤,這個時候需要用ASPNET_REGSQL命令重新設(shè)置一下aspnetdb數(shù)據(jù)庫,比且將連接字符串指向這個數(shù)據(jù)庫。
<remove name="LocalSqlServer"/>
<add name="LocalSqlServer" connectionString="Data Source=.;Integrated Security=True;Initial Catalog=aspnetdb" providerName="System.Data.SqlClient" />
這樣就應(yīng)該沒問題了,希望這篇文章對受到這個問題困擾的朋友能起到幫助。