Пример #1
0
        private IExecutionContext FillExecutionContext(ExecutionContext _executionContext, RequestContext requestContext, ControllerCreateParams controllerConfig)
        {
            if (!String.IsNullOrEmpty(controllerConfig.DivId))
            {
                _executionContext.ResponseHeader.Add(Constants.REFRESHDIV, controllerConfig.DivId);
            }
            ISafeBlockProvider safeBlockProvider = ControllerConfigurator.utilityProvider.GetSafeBlockProvider();

            _executionContext.SafeActionBlock = safeBlockProvider.Create(controllerConfig.ExceptionPolicy);
            return(_executionContext);
        }
Пример #2
0
        private IController GetExceptionController(FrameworkException exception, ExecutionContext executionContext, ISessionContext sessionContext)
        {
            System.Web.Mvc.Controller controller      = null;
            IExceptionConfig          exceptionConfig = ExceptionBag.Get(exception.ErrorId.ToString());
            object command        = Activator.CreateInstance(typeof(HandledExceptionCommand), exception);
            object resultBuilder  = ActionResultBuilderFactory.Create(exceptionConfig.ResponseType, null);
            Type   controllerType = typeof(Requestor <,>).MakeGenericType(
                new Type[] { typeof(HandledExceptionCommand), typeof(JsonErrorMessage) });
            ISafeBlockProvider safeBlockProvider = ControllerConfigurator.utilityProvider.GetSafeBlockProvider();

            executionContext.SafeActionBlock = safeBlockProvider.Create("UIDefault");
            controller = Activator.CreateInstance(controllerType, executionContext, sessionContext, command, resultBuilder) as System.Web.Mvc.Controller;
            return(controller);
        }