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