读书人

在两个帐套进行切换,怎么来适应多用户

发布时间: 2012-03-16 16:34:56 作者: rapoo

在两个帐套进行切换,如何来适应多用户
我在一个页面的代码如下:
protected void HNKD_Click(object sender, EventArgs e)
{
Maticsoft.DBUtility.DbHelperSQL.factorychoice("KD");
Session["factory"] = "康达电子";
Response.Redirect("Main.aspx");
}
protected void HNBD_Click(object sender, EventArgs e)
{
Maticsoft.DBUtility.DbHelperSQL.factorychoice("BD");
Session["factory"] = "博禄德电子";
Response.Redirect("Main.aspx");
}
用来切换连接字符串,,其中 Maticsoft.DBUtility.DbHelperSQL 的代码如下
public abstract class DbHelperSQL
{
//数据库连接字符串(web.config来配置),多数据库可使用DbHelperSQLP来实现.
public static string connectionString = PubConstant.ConnectionString;
public DbHelperSQL()
{

}

/// <summary>
/// 进行工厂别的切换
/// </summary>
public static void factorychoice(string factory)
{
switch (factory)
{
case "KD":
connectionString = PubConstant.ConnectionString;
break;
case "BD":
connectionString = PubConstant.ConnectionString2; ;
break;
}
}

我感觉我这样子用static,只适合一个用户,如果是多用户, 肯定不行,
那代码如何改成适应多用户的,切换帐套呢

[解决办法]

探讨
我觉得最大的问题是卡在数据访问层DBUtility, 全部方法都是采用static ,而业务逻辑层 没有使用new关键字,全部用 DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters) 的方式来访问数据访问层, 才导致这样子的一个情况,如何如何修改哦,

[解决办法]
探讨
引用:

引用:
我觉得最大的问题是卡在数据访问层DBUtility, 全部方法都是采用static ,而业务逻辑层 没有使用new关键字,全部用 DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters) 的方式来访问数据访问层, 才导致这样子的一个情况,如……

[解决办法]
探讨
引用:

引用:
引用:

引用:
我觉得最大的问题是卡在数据访问层DBUtility, 全部方法都是采用static ,而业务逻辑层 没有使用new关键字,全部用 DataSet ds=DbHelperSQL.Query(strSql……

[解决办法]
探讨
我之前已经对Session["factory"] 赋过值,不应该是NULL,会不会原因在于我是三层架构, 数据访问层DBUtility是独立的项目, 不在WEB代码里面呢

读书人网 >asp.net

热点推荐