菜鸟提问:ASp.net 如何动态连接 多个(3个) 数据库

czhmily 2009-06-04 08:57:53
公司本来有3个类似的系统(asp.net)和3个类似的数据库(sql server 2005),现在已经把3个数据库的结构改成一样的了,用一个系统连接这3个数据库,让用户在login的时候选择自己想要连接的数据库,
大哥大姐们
请问怎么才能做到啊,应该写在系统的哪个地方,大家有没有类似的代码,谢谢啊
...全文
721 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
xunkai0823 2009-08-03
  • 打赏
  • 举报
回复
WebConfig配置多个连接节点
山书生 2009-08-03
  • 打赏
  • 举报
回复
也要弄多个数据库连接,查到点资料

http://tech.ccidnet.com/art/1111/20040214/671349_1.html
1、连接一个数据库:
在web.config中的<configuration>后加入
<appsettings>
<add key="connstring"
value="uid=flash;password=3.1415926;database=news;server=(local)" />
</appsettings>
在程序中,你可以使用以下代码来使用web.config中的设置:
-----vb.net-----
imports system.configuration
dim myvar as string
myvar=configurationsettings.appsettings("connstring"
-----c#-----
using system.configuration;
string myvar;
myvar=configurationsettings.appsettings["connstring"];
2、连接多个数据库
同理,那就是使用多个不同的key值来设置
dale_metis 2009-06-05
  • 打赏
  • 举报
回复
还是不能动态的选择
xsm545 2009-06-04
  • 打赏
  • 举报
回复
1楼方法就可以解决了..
che2piaopiao 2009-06-04
  • 打赏
  • 举报
回复
多写两个连接串不就好了??

搞这么高调。。。
czhmily 2009-06-04
  • 打赏
  • 举报
回复
我在webconfig里 写了个select case, 根据login的下拉框选择 数据库连接 但是每次都不成功
dzpzds 2009-06-04
  • 打赏
  • 举报
回复
没得说了
shenweiblue 2009-06-04
  • 打赏
  • 举报
回复
webconfig是一个XML,可以用处理XML一样对它进行控制,选择节点修改值不就行了,但请注意,WEB.CONFIG修改后将引发事件重新加载,只要有一点点的错误都会造成程序的崩溃,
最完全的是重新写一个xml,如TestConnection.xml

赋值: xmldocTree.SelectSingleNode("siteMapNode").InnerText = "";
持久层:
public static readonly string conString = xmldocTree.SelectSingleNode("siteMapNode").InnerText.ToString();
czhmily 2009-06-04
  • 打赏
  • 举报
回复
主要是想用 一个asp.net的系统代替 以前的三个asp.net 因为现在把数据库改成一样的
楼上的同志们
能在说详细些吗 谢谢
古龙老子 2009-06-04
  • 打赏
  • 举报
回复
用配置文件,
根据用户所选择的跳转
huxinghuo123 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 shenweiblue 的回复:]
为什么要做三个数据库呢?我还是第一次听说过。
选择哪个数据库方法很多啊。我提供一个比较另类的:
Key="ConnectionStr" Value="";
登录的时候修改根据用户的选择,修改Value的值。
持久层中:
public static readonly string conString = ConfigurationManager.AppSettings["ConnectionStr"].ToString();
[/Quote]
这个方法我觉得挺不错的,但怎样来修改这个Value值呢,能详细点举个例说明吗?
huxinghuo123 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 czhmily 的回复:]
在web.config是可以设置多个连接 但是怎么才能 让登陆页面 选择 web.config里面的具体哪个连接 谢谢啊
[/Quote]

在登陆的时候用Session保存你所选择的链接,如Session["conn"]=.......
然后再整个系统里面都使用这个Session作为数据库连接就行了
liujianliang 2009-06-04
  • 打赏
  • 举报
回复
如果这三个数据库变动性不大的话可以手动写到下拉列表里
根据下拉选择用webconfigurationManager类来读取连接字符串,不难吧?
shenweiblue 2009-06-04
  • 打赏
  • 举报
回复
为什么要做三个数据库呢?我还是第一次听说过。
选择哪个数据库方法很多啊。我提供一个比较另类的:
Key="ConnectionStr" Value="";
登录的时候修改根据用户的选择,修改Value的值。
持久层中:
public static readonly string conString = ConfigurationManager.AppSettings["ConnectionStr"].ToString();
dxklpp 2009-06-04
  • 打赏
  • 举报
回复
支持1楼的
nosuchtracter 2009-06-04
  • 打赏
  • 举报
回复
看你对哪个库进行操作了
如果需求里面不能区分对哪个库进行操作,那不是会乱套?
根据用户进行的操作判断对哪个库,读取相应配置就可以了
gongsun 2009-06-04
  • 打赏
  • 举报
回复
操作哪个数据库就会连接哪个。

czhmily 2009-06-04
  • 打赏
  • 举报
回复
顶一下 呵呵
czhmily 2009-06-04
  • 打赏
  • 举报
回复
谢谢 我现在回公司 试一下
czhmily 2009-06-04
  • 打赏
  • 举报
回复
在web.config是可以设置多个连接 但是怎么才能 让登陆页面 选择 web.config里面的具体哪个连接 谢谢啊
加载更多回复(4)

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧