1. 程式人生 > >EF 實體類 如何動態對映到其它的表上

EF 實體類 如何動態對映到其它的表上

為了提高系統的執行效率, 我把一些不常用的資料移到了另外一個歷史記錄表. 為了減少不必要的修改, 僅僅是查詢老資料的時候切換到另外一個表其它的不改變. 百度了好久,最好終於找到了答案. 網路上流傳的寫法太麻煩. 我改成了比較簡潔的寫法.

           var dbConn = DBContextFactory.GetConnection();
//          if(查詢的是老表)
            DbModelBuilder dbmodel = new DbModelBuilder();3
             dbmodel.Configurations.Add(new
WReportMap()); //重新對映欄位關係. dbmodel.Entity<WReport>().ToTable("w_report_history"); //切換表對映. var dbmodelcompile = dbmodel.Build(dbConn).Compile(); var newContext = new DbContext(dbConn, dbmodelcompile,true); //新的DbContext,替代老的. var query = newContext.
Set<WReport>().Where(queryfields);