NopCommerce 执行计划任务不同Services协调操作导致更新数据失败的问题!


问题描述:  

    在Nop的计划任务里需要两个任务协调操作

    _shipmentService.InsertShipment(shipment);
    _orderProcessingService.Ship(shipment, true);

    因为Nop用了AutoFac并指定DBContext 为 InstancePerHttpRequest() ,但是在计划任务里并不是 从客户端发送过来的请求~

        所以IRepository里的DBContext 不是同一个,所以导致 EF没有跟踪到实体的修改状态~