第一次在這裡發,覺得這裡很好,是因為可以強迫自己把遇到的困難,解決的方法及時的記錄下來,以前做過很多東西,很久不用就忘了。寫下來,算是對自己的一種勉勵吧。當然希望對大家能有點幫助,但是畢竟能力有限,還要請高手們多多指教。
裝好vs2005,如果選擇安裝SqlExpress,一切都是預設配置好的,"login控制"拖上就能用.但是這個似乎不太夠用,ok,安裝SqlServer.首先在安裝上就花費了一番功夫,這裡就不囉嗦了.那麼該怎麼配置一下呢?
在msdn上也找到了,見下面的程式碼.在web.config中新增一段,就能連上資料庫了.
1 <configuration>
2 <connectionStrings>
3 <remove name="LocalSqlServer"/>
4 <add name="LocalSqlServer"
5 connectionString="Data Source=localhost;
6 Initial Catalog=appservicesdb;
7 Integrated Security=True"
8 providerName="System.Data.SqlClient"/>
9 </connectionStrings>
10 </configuration>
這裡在囉嗦幾句,第七行,如果是基於window驗證的就按此書寫,但是(Windows 2003)的用戶需要設定一下用戶的,否則不能通過的.這段程式碼是我是用得user= ***,pwd=***,因為後期我需要移植,web和sql伺服器分開的,而且我比較喜歡後者.
我非常納悶的是第三句,不知道為什麼要用remove,msdn上這麼解釋:
1 <connectionStrings >
2 <add />為連接字串集合新增名稱/值對形式的連接字串。
3 <clear />移除所有對繼承的連接字串的引用,僅允許那些由當前的add 元素添加的連接字串。
4 <remove />從連接字串集合中移除對繼承的連接字串的參考。
5 </connectionStrings>
6
7
不知大家是否在意過,而且我去掉remove這句話,會報錯。經過一番折騰,其實,<connectionStrings />這段話就等於重載,想想看,為什麼在SqlExpress時能夠預設連接,應該是在什麼地方配置好了。以前接觸過unix和linux,感受最大是他們的配置文件,所有的東西都需要你去配置,而且一但你配置好之後條理會非常清楚,全都是用文本配置的。用Microsoft的東西總是有點迷糊,不知道彼此之間的銜接,現在Microsoft感覺設定檔方面倒是好多了,有點離題了,趕快回來。所以總有找設定檔的感覺,還別說,真是給找了,在machine.config中有一段程式碼如下:
1 <connectionStrings>
2 <add
3 name="LocalSqlServer"
4 connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
5 providerName="System.Data.SqlClient"
6 />
7 </connectionStrings>
8
找到源頭了,就是這句話在運作。當你啟動你編輯的頁面時,首先會呼叫你的web.config文件,當發現你的web.config中沒有進行任何配置時,就去machine.config中查找。所以說就有上面的remove語句。其實不只這樣,而且LocalSqlServer也不能改,因為machine.config中的後面的provider還呼叫了LocalSqlServer,有興趣的可以看看,這裡就不囉嗦了。
最後還要提醒大家的是,machine.config中最好不要改,很可能改了某項,你的機器就出大問題了哦。
出處:wendy BLOG
http://wendy980622.cnblogs.com/archive/2006/03/09/346198.html