【LINQ】指定的 LINQ 表達式包含對與不同上下文關聯的查詢的引用

通過把兩個實體放到同一個上下文

關鍵字 ObjContext(不能跨庫使用)

使用前

 OrderParentService orderParentService = new OrderParentService();
 OrderItemService orderItemService = new OrderItemService();

 var platform = Platform.EBay.ToString();
 var datetime= DateTime.Now.AddMonths(-1);
 //訂單主表
 var orderParentList = orderParentService.FindAll(p => p.PLATFORM == platform && p.ORDER_INSERT_DATE >= datetime).Select(p => p.ORDER_ID);
 //訂單詳情
 var orderItemList = orderItemService.FindAll(p => orderParentList.Contains(p.ORDER_ID) && p.ASIN == null);

使用後

OrderParentService orderParentService = new OrderParentService();
var op = orderParentService.ObjContext;
OrderItemService orderItemService = new OrderItemService();
orderItemService.ObjContext = op;

var platform = Platform.Amazon.ToString();
var datetime= DateTime.Now.AddMonths(-1);
//訂單列表
var orderParentList = orderParentService.FindAll(p => p.PLATFORM == platform && p.ORDER_INSERT_DATE >= datetime).Select(p => p.ORDER_ID);
//訂單詳情
var orderItemList = orderItemService.FindAll(p => orderParentList.Contains(p.ORDER_ID) && p.ASIN == null);

 

完美解決【撒花~】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章