0

我公司有 2 个部门向不同类别的客户销售机票。两个部门的工单数据库不同,但里面的表是一样的。

我想根据部门ID插入数据行或操作数据。在过去,我可以使用变量部门ID 来确定哪个部门并连接到正确的数据库。而且由于表结构相同,其余代码可以共享。例如: SQLstr = "....来自 eAirsTable " + departmentID + " where ..."

但现在我是 DataContext,我不知道该怎么做。

    public class eAirs_OrderManager : IOrderInterface
    {
        public void Insert_OrderDB( Login _login)
        {

            if (_login.departmentID=="Orange")
            {
                OrderDB_testDataContext OrderDBDC = new OrderDB_testDataContext();                
            }

            if (_login.departmentID=="Tristar")
            {
                OrderDBDataContext OrderDBDC = new OrderDBDataContext();
            }

            OrderDBDC.... **<--cannot be done**
        }

        public void Insert_Member_simple
        {
            ...
        }
}

请指教。

4

2 回答 2

2

由于两个数据库的基础架构相同,因此仅创建一个具有两组不同连接字符串的数据上下文。

if (_login.departmentID=="Orange")
{
  OrderDBDataContext OrderDBDC = new OrderDBDataContext("ConnectionString 1");
}

if (_login.departmentID=="Tristar")
{
  OrderDBDataContext OrderDBDC = new OrderDBDataContext("ConnectionString 2c");
}
于 2012-11-12T11:08:46.560 回答
0

为每个部门创建不同的连接字符串,并使用它来创建不同的上下文。

OrderDBDataContext OrderDBDC = new OrderDBDataContext(New DBConnection("DepartmentConnectionStringName"));
于 2012-11-12T10:57:04.980 回答