第一次在这里发贴,觉得这里很好,是因为可以强迫自己把遇到的困难,解决的方法及时的记录下来,以前做过很多东西,很久不用就忘了。写下来,算是对自己的一种勉励吧。当然希望对大家能有点帮助,但是毕竟能力有限,还要请高手们多多指教。
装好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