/// <summary>
        /// コンストラクタ
        /// </summary>
        public PlatypusLogicBase(ICommonDiLogic commonDiLogic)
        {
            //ロガーのDI
            logger = commonDiLogic.DynamicLoggerDi(this);

            // Controller を経由せずに DI されると commonDiLogic.DynamicMultiTenancyLogicDi() は null を返却するので注意すること。
            this.multiTenancyLogic = commonDiLogic.DynamicMultiTenancyLogicDi();

            this.CommonDiLogic = commonDiLogic;
        }
        /// <summary>
        /// コンストラクタ
        /// </summary>
        public PlatypusApiControllerBase(IHttpContextAccessor accessor) : base()
        {
            var provider = accessor.HttpContext.RequestServices;
            //ロガーのDI
            ILoggerFactory loggerFactory = (ILoggerFactory)provider.GetService(typeof(ILoggerFactory));

            logger = loggerFactory.CreateLogger(this.GetType());

            IMultiTenancyLogic multiTenancyLogic = (IMultiTenancyLogic)provider.GetService(typeof(IMultiTenancyLogic));

            CurrentUserInfo = multiTenancyLogic.CurrentUserInfo;
        }
Beispiel #3
0
 public AccountController(
     ILoginLogic loginLogic,
     IUserRepository userRepository,
     IMultiTenancyLogic multiTenancyLogic,
     IUnitOfWork unitOfWork,
     IOptions <WebSecurityOptions> webSecurityOptions,
     IHttpContextAccessor accessor) : base(accessor)
 {
     this.loginLogic         = loginLogic;
     this.userRepository     = userRepository;
     this.multiTenancyLogic  = multiTenancyLogic;
     this.unitOfWork         = unitOfWork;
     this.webSecurityOptions = webSecurityOptions.Value;
 }