/// <summary> /// 初始化构造 /// 用于不同的个上下文,使用注入的工作单元 /// </summary> /// <param name="dbContext">上下文实例</param> /// <param name="service">服务集合</param> /// <param name="logger">日志</param> protected CrudControllerBase(IEFCoreUnitOfWork unitOfWork, IServiceCollection service, ILogger <Controller> logger) : base(service, logger) { _validator = service.BuildServiceProvider().GetService <FluentValidation.IValidator <TCodeTabelModel> >(); _repository = new EFCoreBaseRepository <TCodeTabelEntity>(unitOfWork.Context); _readerService = new GenericReaderService <TCodeTabelEntity, long>(logger, _repository); _writerService = new GenericWriterService <TCodeTabelEntity, long>(logger, _repository, unitOfWork); CrudDtoMapper = service.BuildServiceProvider().GetService <ICrudDtoMapper <TCodeTabelEntity, TCodeTabelModel> >(); }
/// <summary> /// 初始化构造 /// 使用注入的同一个上下文 /// </summary> /// <param name="service">服务集合</param> /// <param name="logger">日志</param> protected CrudControllerBase(IServiceCollection service, ILogger <Controller> logger) : base(service, logger) { _validator = service.BuildServiceProvider().GetService <FluentValidation.IValidator <TCodeTabelModel> >(); _readerService = service.BuildServiceProvider().GetService <IGenericReaderService <TCodeTabelEntity, long> >(); _writerService = service.BuildServiceProvider().GetService <IGenericWriterService <TCodeTabelEntity, long> >(); _repository = service.BuildServiceProvider().GetService <IEFCoreQueryableRepository <TCodeTabelEntity, long> >(); CrudDtoMapper = service.BuildServiceProvider().GetService <ICrudDtoMapper <TCodeTabelEntity, TCodeTabelModel> >(); }