如何处理 EF 数据库优先上下文列表并正确转换它们?

我有一个实体框架的 6.0 数据库第一个上下文的列表,名称不同。它们都包含一个名为“bill”的表。我需要检查每个数据库的账单表,并根据条件将信息添加到一个新数据库中。例子 :

  1. Company1_Entities

  2. Company2_Entities

  3. Company3_Entities

这 3 个数据库包含账单表。我需要将这些账单有条件地存储到:

All_Bills_Entities

随着公司数量的增长,我需要让这个动态。我在想这样的事情:

Dictionary<string, DbContext> lstDB = new Dictionary<string, DbContext>();


// I'm supposed to retrieve these db names from a table, but now i'm just testing


lstDB.Add("00439837", new DbContext("Company1_Entities"));

lstDB.Add("00439832", new DbContext("Company2_Entities"));

lstDB.Add("00439839", new DbContext("Company3_Entities"));


using (All_Bills_Entities main_db = new All_Bills_Entities())

{

    foreach(var dataBaseInfo in lstDB)

    {

        DbContext currentDB = dataBaseInfo.Value;


        foreach (var record in currentDB.bill.ToList()) // this does not compile, there is no bill table found here

        {

           if(record.merchant == dataBaseInfo.Key /* && other Conditions */)

           {

                main_db.bill.Add(record)

           }

        }

    }

}


千万里不及你
浏览 166回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP