Exemple #1
0
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            base.OnActionExecuting(context);

            var httpContext = context.HttpContext;

            ServiceProvider = httpContext.RequestServices;
            HttpRequest GetRequest() => httpContext.Request;

            _oqtState = new OqtState(GetRequest, ServiceProvider, Log);

            var getBlock = _oqtState.GetBlock(true);

            DynCode = ServiceProvider.Build <OqtaneDynamicCode>().Init(getBlock, Log);

            var stxResolver = ServiceProvider.Build <IContextResolver>(typeof(IContextResolver));

            stxResolver.AttachRealBlock(() => getBlock);
            stxResolver.AttachBlockContext(() => _oqtState.GetContext());

            if (context.HttpContext.Items.TryGetValue(CodeCompiler.SharedCodeRootPathKeyInCache, out var createInstancePath))
            {
                CreateInstancePath = createInstancePath as string;
            }
        }
        protected OqtStatefulControllerBase(StatefulControllerDependencies dependencies) : base()
        {
            ServiceProvider = dependencies.ServiceProvider;
            _oqtState       = new OqtState(GetRequest, ServiceProvider, Log);

            dependencies.CtxResolver.AttachRealBlock(() => GetBlock());
            dependencies.CtxResolver.AttachBlockContext(GetContext);
        }