共享动态连接串的名字我有一个ASP.NET Web应用程序项目中,当过用户登录,可根据用户登录,我们得到具有不同的连接数据库中的字符串名称并将其存储在会话中。如何从asp.net应用程序类libary(数据访问层)
在数据库访问层
我创建了一个类名ShareSession
public class ShareSession
{
public string ConnectionString1 { get; set; }
public string ConnectionString2 { get; set; }
public ShareSession()
{
try
{
ConnectionString1 = Convert.ToString(HttpContext.Current.Session["ConnectionStringname1"]);
ConnectionString2 = Convert.ToString(HttpContext.Current.Session["ConnectionStringname2"]);
}
catch (Exception)
{
HttpContext.Current.Response.Redirect("~/DashBoard/Login.aspx");
throw;
}
}
}
当访问这个对象,我只是创建该类的对象。
ShareSession objShareSession = new ShareSession();
var Connection_Database = Convert.ToString(objShareSession.ConnectionString1);
using (SqlConnection conn = new SqlConnection(Convert.ToString(ConfigurationManager.ConnectionStrings[Connection_Database].ConnectionString)))
{
// Database Logic
}
它表现缓慢有没有其他的解决方案。
情景: - 我从数据库每次设置动态连接字符串名称时,使用登录它具有标准化不同区域的数据库,如果来自印度一个登录那么他的数据将在印度数据库插入,如果他从美国入口那么他的数据插入USA数据库,在这种情况下我怎么能发送连接到数据访问层的这种动态名称
阅读https://stackoverflow.com/a/8422186/34092 – mjwills
是什么让你觉得这是造成缓慢?您是否分析了您的应用程序以确定其速度缓慢? –
嗨mjwills我的问题不是那么简单理解它我设置动态连接字符串名称从数据库每次使用登录时它有不同的区域数据库进行规范化如果从印度一个登录然后他的数据将被插入印度数据库,如果他从美国登录那么他的数据插入到美国的数据库,在这种情况下我怎么可以给这种连接动态名称将数据访问层 – Saineshwar