我遇到需要多个连接字符串来处理请求的情况,但我无法使用Microsoft企业库实现此功能。
有人请告诉我如何动态设置连接字符串。
在互联网上发现了类似的问题,但没有解决我的问题,因此发布了。
答案 0 :(得分:4)
AFAIK,无法动态设置连接字符串,但您可以编写自定义数据库工厂来创建具有动态连接字符串的数据库
public static class CustomDatabaseFactory
{
static readonly DbProviderFactory dbProviderFactory = DbProviderFactories.GetFactory("System.Data.SqlClient");
public static Database CreateDatabase(string connectionString)
{
return new GenericDatabase(connectionString, dbProviderFactory);
}
}
而不是调用此
Database db = DatabaseFactory.CreateDatabase();
调用此方法
Database db = CustomDatabaseFactory.CreateDatabase(connstring);
对我来说效果很好!