Esempio n. 1
0
        public PageActionInvokerProvider(
            IPageFactory factory,
            IPageHandlerMethodSelector selector,
            IPageLoader loader,
            DiagnosticListener diagnosticSource,
            ILoggerFactory loggerFactory,
            IEnumerable <IFilterProvider> filterProviders,
            IModelMetadataProvider metadataProvider,
            ITempDataDictionaryFactory tempDataFactory,
            IOptions <MvcOptions> options,
            IOptions <MvcViewOptions> viewOptions,
            TempDataPropertyProvider pagePersistedPropertyProvider)
        {
            _factory          = factory;
            _selector         = selector;
            _diagnosticSource = diagnosticSource;
            _loader           = loader;
            _metadataProvider = metadataProvider;
            _tempDataFactory  = tempDataFactory;
            _viewOptions      = viewOptions;
            _pagePersistedPropertyProvider = pagePersistedPropertyProvider;

            _filterProviders        = filterProviders.OrderBy(fp => fp.Order).ToArray();
            _logger                 = loggerFactory.CreateLogger <PageActionInvoker>();
            _valueProviderFactories = options.Value.ValueProviderFactories.ToArray();
        }
        public PageActionInvoker(
            DiagnosticListener diagnosticSource,
            ILogger logger,
            IPageFactory factory,
            IPageModelFactory modelFactory,
            IPageHandlerMethodSelector selector,
            IModelMetadataProvider metadataProvider,
            ITempDataDictionaryFactory tempDataFactory,
            IOptions <MvcViewOptions> viewOptions,
            IFilterMetadata[] filters,
            IReadOnlyList <IValueProviderFactory> valueProviderFactories,
            ActionContext actionContext,
            CompiledPageActionDescriptor actionDescriptor,
            TempDataPropertyProvider tempDataPropertyProvider)
        {
            _diagnosticSource         = diagnosticSource;
            _logger                   = logger;
            _factory                  = factory;
            _modelFactory             = modelFactory;
            _selector                 = selector;
            _metadataProvider         = metadataProvider;
            _tempDataFactory          = tempDataFactory;
            _viewOptions              = viewOptions.Value;
            _filters                  = filters;
            _valueProviderFactories   = new CopyOnWriteList <IValueProviderFactory>(valueProviderFactories);
            _actionContext            = actionContext;
            _actionDescriptor         = actionDescriptor;
            _tempDataPropertyProvider = tempDataPropertyProvider;

            _cursor = new FilterCursor(_filters);
        }