내 트랜잭션에 문제가 있습니다. 분산 트랜잭션으로 에스컬레이션되고 싶지 않습니다. 원하지 않습니다. 내가 읽은 것에서 이것은 트랜잭션 범위에서 여러 연결을 열어서 발생합니다. 이 문제를 해결하기 위해 하나의 컨텍스트와 따라서 트랜잭션 범위에서 하나의 연결 만 가질 수 있도록 하나의 dbContext를 만들고이를 모든 클래스에 전달할 수 있도록 코드를 다시 작업하고 있습니다.클래스 인스턴스를 기본 클래스 생성자에 전달하는 방법
제 질문은 어떻게 컨텍스트의 인스턴스 하나를 만들어 기본 클래스에 전달합니까? 내가 올린 내용은 내가 컨셉으로하려는 것이지만, 분명히 효과가 없을 것입니다. 이것을 어떻게 할 수 있습니까?
private WorkOrderHeaderRepository _workOrderHeaderRepository;
private WorkOrderDetailRepository _workOrderDetailRepository;
private InventoryMgmtContext _dbContext;
#region Constructors
public ManageWorkOrdersAppServ()
: base(new WorkOrderHeaderRepository(_dbContext)) <----How pass _dbContext to base here
{
_dbContext = new InventoryMgmtContext();
_workOrderHeaderRepository = new WorkOrderHeaderRepository(_dbContext);
_workOrderDetailRepository = new WorkOrderDetailRepository(_dbContext);
}
작동하지 않는 경우에도 null 참조를 전달할 수 있습니다 *. 필드를 아직 초기화하지 않았습니다. –