public PageActionInvokerProvider( IPageLoader loader, IPageFactoryProvider pageFactoryProvider, IPageModelFactoryProvider modelFactoryProvider, IRazorPageFactoryProvider razorPageFactoryProvider, IActionDescriptorCollectionProvider collectionProvider, IEnumerable <IFilterProvider> filterProviders, ParameterBinder parameterBinder, IModelMetadataProvider modelMetadataProvider, ITempDataDictionaryFactory tempDataFactory, IOptions <MvcOptions> mvcOptions, IOptions <HtmlHelperOptions> htmlHelperOptions, IPageHandlerMethodSelector selector, RazorProject razorProject, DiagnosticSource diagnosticSource, ILoggerFactory loggerFactory) { _loader = loader; _pageFactoryProvider = pageFactoryProvider; _modelFactoryProvider = modelFactoryProvider; _razorPageFactoryProvider = razorPageFactoryProvider; _collectionProvider = collectionProvider; _filterProviders = filterProviders.ToArray(); _valueProviderFactories = mvcOptions.Value.ValueProviderFactories.ToArray(); _parameterBinder = parameterBinder; _modelMetadataProvider = modelMetadataProvider; _tempDataFactory = tempDataFactory; _htmlHelperOptions = htmlHelperOptions.Value; _selector = selector; _razorProject = razorProject; _diagnosticSource = diagnosticSource; _logger = loggerFactory.CreateLogger <PageActionInvoker>(); }
public ComicUpdater(ComicDatabase database, IPageLoader pageLoader) { this.database = database; this.pageLoader = pageLoader; importingComics = new List <ComicData>(); }
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 RequestHandlerInfo(IActionDescriptorCollectionProvider actionDescriptorCollectionProvider, IPageLoader pageLoader, LinkGenerator linkGenerator) { _locker = new object(); _locker2 = new object(); _actionDescriptorCollectionProvider = actionDescriptorCollectionProvider; _pageLoader = pageLoader; _linkGenerator = linkGenerator; }
public Spider(IUriMapper uriMapper, IUriTracker uriTracker, IPageLoader pageLoader, IPageArchive pageArchive, IPageParser pageParser, ILogger logger) { UriMapper = uriMapper; UriTracker = uriTracker; PageLoader = pageLoader; PageArchive = pageArchive; PageParser = pageParser; Logger = logger; }
public PageLoaderMatcherPolicy(IPageLoader loader) { if (loader == null) { throw new ArgumentNullException(nameof(loader)); } _loader = loader; }
public RoleManagerController(AppRoleManager roleManager, AppUserManager userManager, ApplicationDbContext dbContext, IActionDescriptorCollectionProvider actionDescriptor, IPageLoader pageLoader, AppSignInManager signInManager) { _roleManager = roleManager; _userManager = userManager; _dbContext = dbContext; _actionDescriptor = actionDescriptor; _pageLoader = pageLoader; _signInManager = signInManager; }
public WebFormsMiddleware( IPageFactory pageFactory, IPageContextFactory pageContextFactory, IPageLoader pageLoader, RequestDelegate next) { _pageFactory = pageFactory ?? throw new ArgumentNullException(nameof(pageFactory)); _pageLoader = pageLoader ?? throw new ArgumentNullException(nameof(pageLoader)); _pageContextFactory = pageContextFactory ?? throw new ArgumentNullException(nameof(pageContextFactory)); _next = next ?? throw new ArgumentNullException(nameof(next)); }
private static PageActionInvokerProvider CreateInvokerProvider( IPageLoader loader, IActionDescriptorCollectionProvider actionDescriptorProvider, IPageFactoryProvider pageProvider = null, IPageModelFactoryProvider modelProvider = null, IRazorPageFactoryProvider razorPageFactoryProvider = null, RazorProjectFileSystem fileSystem = null) { var tempDataFactory = new Mock <ITempDataDictionaryFactory>(); tempDataFactory .Setup(t => t.GetTempData(It.IsAny <HttpContext>())) .Returns((HttpContext context) => new TempDataDictionary(context, Mock.Of <ITempDataProvider>())); if (fileSystem == null) { fileSystem = Mock.Of <RazorProjectFileSystem>(); } var modelMetadataProvider = TestModelMetadataProvider.CreateDefaultProvider(); var modelBinderFactory = TestModelBinderFactory.CreateDefault(); var mvcOptions = new MvcOptions { AllowValidatingTopLevelNodes = true, }; var parameterBinder = new ParameterBinder( modelMetadataProvider, TestModelBinderFactory.CreateDefault(), Mock.Of <IObjectModelValidator>(), Options.Create(mvcOptions), NullLoggerFactory.Instance); return(new PageActionInvokerProvider( loader, pageProvider ?? Mock.Of <IPageFactoryProvider>(), modelProvider ?? Mock.Of <IPageModelFactoryProvider>(), razorPageFactoryProvider ?? Mock.Of <IRazorPageFactoryProvider>(), actionDescriptorProvider, new IFilterProvider[0], parameterBinder, modelMetadataProvider, modelBinderFactory, tempDataFactory.Object, Options.Create(new MvcOptions()), Options.Create(new HtmlHelperOptions()), Mock.Of <IPageHandlerMethodSelector>(), fileSystem, new DiagnosticListener("Microsoft.AspNetCore"), NullLoggerFactory.Instance, new ActionResultTypeMapper())); }
public DownloadViewModel( IValidationService validationService, IPageLoader pageLoader, IPageSaver pageSaver) { _validationService = validationService; _pageLoader = pageLoader; _pageSaver = pageSaver; Sources = new ObservableCollection <SourceViewModel> { new SourceViewModel() }; StartDownloadCommand = new Command(StartDownload); CancelDownloadCommand = new Command(CancelDownload); AddSourceCommand = new Command(AddSource); }
private static PageActionInvokerProvider CreateInvokerProvider( IPageLoader loader, IActionDescriptorCollectionProvider actionDescriptorProvider, IPageFactoryProvider pageProvider = null, IPageModelFactoryProvider modelProvider = null, IRazorPageFactoryProvider razorPageFactoryProvider = null, RazorProject razorProject = null) { var tempDataFactory = new Mock <ITempDataDictionaryFactory>(); tempDataFactory .Setup(t => t.GetTempData(It.IsAny <HttpContext>())) .Returns((HttpContext context) => new TempDataDictionary(context, Mock.Of <ITempDataProvider>())); if (razorProject == null) { razorProject = Mock.Of <RazorProject>(); } var modelMetadataProvider = TestModelMetadataProvider.CreateDefaultProvider(); var parameterBinder = new ParameterBinder( modelMetadataProvider, TestModelBinderFactory.CreateDefault(), Mock.Of <IModelValidatorProvider>()); return(new PageActionInvokerProvider( loader, pageProvider ?? Mock.Of <IPageFactoryProvider>(), modelProvider ?? Mock.Of <IPageModelFactoryProvider>(), razorPageFactoryProvider ?? Mock.Of <IRazorPageFactoryProvider>(), actionDescriptorProvider, new IFilterProvider[0], parameterBinder, modelMetadataProvider, tempDataFactory.Object, new TestOptionsManager <MvcOptions>(), new TestOptionsManager <HtmlHelperOptions>(), Mock.Of <IPageHandlerMethodSelector>(), razorProject, new DiagnosticListener("Microsoft.AspNetCore"), NullLoggerFactory.Instance)); }
public MyPageActionInvokerProvider( IPageLoader loader, IPageFactoryProvider pageFactoryProvider, IPageModelFactoryProvider modelFactoryProvider, IRazorPageFactoryProvider razorPageFactoryProvider, IActionDescriptorCollectionProvider collectionProvider, IEnumerable <IFilterProvider> filterProviders, ParameterBinder parameterBinder, IModelMetadataProvider modelMetadataProvider, IModelBinderFactory modelBinderFactory, ITempDataDictionaryFactory tempDataFactory, IOptions <MvcOptions> mvcOptions, IOptions <HtmlHelperOptions> htmlHelperOptions, IPageHandlerMethodSelector selector, RazorProjectFileSystem razorFileSystem, DiagnosticSource diagnosticSource, ILoggerFactory loggerFactory, IActionResultTypeMapper mapper) : base(loader, pageFactoryProvider, modelFactoryProvider, razorPageFactoryProvider, collectionProvider, filterProviders, parameterBinder, modelMetadataProvider, modelBinderFactory, tempDataFactory, mvcOptions, htmlHelperOptions, selector, razorFileSystem, diagnosticSource, loggerFactory, mapper) { }
public PageActionInvokerProvider( IPageLoader loader, IPageFactoryProvider pageFactoryProvider, IPageModelFactoryProvider modelFactoryProvider, IRazorPageFactoryProvider razorPageFactoryProvider, IActionDescriptorCollectionProvider collectionProvider, IEnumerable <IFilterProvider> filterProviders, ParameterBinder parameterBinder, IModelMetadataProvider modelMetadataProvider, IModelBinderFactory modelBinderFactory, ITempDataDictionaryFactory tempDataFactory, IOptions <MvcOptions> mvcOptions, IOptions <HtmlHelperOptions> htmlHelperOptions, IPageHandlerMethodSelector selector, DiagnosticListener diagnosticListener, ILoggerFactory loggerFactory, IActionResultTypeMapper mapper, IActionContextAccessor actionContextAccessor) { _loader = loader; _pageFactoryProvider = pageFactoryProvider; _modelFactoryProvider = modelFactoryProvider; _modelBinderFactory = modelBinderFactory; _razorPageFactoryProvider = razorPageFactoryProvider; _collectionProvider = collectionProvider; _filterProviders = filterProviders.ToArray(); _valueProviderFactories = mvcOptions.Value.ValueProviderFactories.ToArray(); _parameterBinder = parameterBinder; _modelMetadataProvider = modelMetadataProvider; _tempDataFactory = tempDataFactory; _mvcOptions = mvcOptions.Value; _htmlHelperOptions = htmlHelperOptions.Value; _selector = selector; _diagnosticListener = diagnosticListener; _logger = loggerFactory.CreateLogger <PageActionInvoker>(); _mapper = mapper; _actionContextAccessor = actionContextAccessor ?? ActionContextAccessor.Null; }
public PageActionInvokerProvider( IPageLoader loader, IPageFactoryProvider pageFactoryProvider, IPageModelFactoryProvider modelFactoryProvider, IRazorPageFactoryProvider razorPageFactoryProvider, IActionDescriptorCollectionProvider collectionProvider, IEnumerable <IFilterProvider> filterProviders, ParameterBinder parameterBinder, IModelMetadataProvider modelMetadataProvider, IModelBinderFactory modelBinderFactory, ITempDataDictionaryFactory tempDataFactory, IOptions <MvcOptions> mvcOptions, IOptions <HtmlHelperOptions> htmlHelperOptions, IPageHandlerMethodSelector selector, DiagnosticListener diagnosticListener, ILoggerFactory loggerFactory, IActionResultTypeMapper mapper) : this( loader, pageFactoryProvider, modelFactoryProvider, razorPageFactoryProvider, collectionProvider, filterProviders, parameterBinder, modelMetadataProvider, modelBinderFactory, tempDataFactory, mvcOptions, htmlHelperOptions, selector, diagnosticListener, loggerFactory, mapper, actionContextAccessor : null) { }
public PageLoaderDecoratorWithNoDupeUrls(IPageLoader baseLoader) { _baseLoader = baseLoader; _alreadyLoadedUrls = new HashSet <string>(); }
public RouteAnalyzer(IActionDescriptorCollectionProvider actionDescriptorCollectionProvider, IPageLoader pageLoader) { _actionDescriptorCollectionProvider = actionDescriptorCollectionProvider; _pageLoader = pageLoader; }
static KayakLoader() { KayakFlightsUrl = ConfigurationManager.AppSettings[KayakFlightUrlKey]; DocumentLoader = UnityConfig.Container.Resolve <IPageLoader>(); }
private IEnumerable <AreaInfo> GetAreaInfos(IActionDescriptorCollectionProvider actionDescriptorCollectionProvider, IPageLoader pageLoader, LinkGenerator linkGenerator) { //根,从area开始 var result = new List <AreaInfo>(); //遍历区域 foreach (var area in actionDescriptorCollectionProvider.ActionDescriptors.Items.GroupBy(item => item.RouteValues["area"])) { var areaInfo = new AreaInfo { Name = area.Key }; result.Add(areaInfo); //遍历控制器 foreach (var controllerActions in area.OfType <ControllerActionDescriptor>().GroupBy(c => c.ControllerTypeInfo)) { //跳过重复控制器,不知道为什么,里面有些重复项目 if (areaInfo.Controllers.Any(c => c.TypeFullName == controllerActions.Key.FullName)) { continue; } var conInfo = new AreaInfo.ControllerInfo { Name = controllerActions.First().ControllerName, TypeFullName = controllerActions.Key.FullName, Description = (controllerActions.Key.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute) ?.Description, Area = controllerActions.First().RouteValues["area"], }; areaInfo.Controllers.Add(conInfo); //遍历动作 foreach (var action in controllerActions) { var act = new AreaInfo.ControllerInfo.ActionInfo { Name = action.MethodInfo.Name, ActionName = action.ActionName, HandlerIdentification = (action.MethodInfo.GetCustomAttribute(typeof(RequestHandlerIdentificationAttribute)) as RequestHandlerIdentificationAttribute) ?.UniqueKey, Signature = action.MethodInfo.ToString(), Description = (action.MethodInfo.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute) ?.Description, Url = linkGenerator.GetPathByAction(action.ActionName, conInfo.Name, new { area = conInfo.Area }), HttpMethodLimits = action.ActionConstraints?.OfType <HttpMethodActionConstraint>().FirstOrDefault()?.HttpMethods.ToList(), MethodInfo = action.MethodInfo, ActionDescriptor = action }; conInfo.Actions.Add(act); } } //遍历Razor Page foreach (var pageActionDescriptor in area.OfType <PageActionDescriptor>()) { //载入Razor Page,会从程序集加载或编译page文件并缓存 var page = pageLoader.Load(pageActionDescriptor); //也是剔除重复 if (areaInfo.Pages.Any(p => p.TypeFullName == page.HandlerTypeInfo.FullName)) { continue; } var pageInfo = new AreaInfo.PageInfo { Name = page.DisplayName, Area = page.AreaName, TypeFullName = page.HandlerTypeInfo.FullName, Description = (page.HandlerTypeInfo.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute) ?.Description }; foreach (var handlerMethod in page.HandlerMethods) { pageInfo.PageHandlers.Add(new AreaInfo.PageInfo.PageHandlerInfo { HttpMethod = handlerMethod.HttpMethod, Name = handlerMethod.Name, HandlerIdentification = (handlerMethod.MethodInfo.GetCustomAttribute(typeof(RequestHandlerIdentificationAttribute)) as RequestHandlerIdentificationAttribute) ?.UniqueKey, Signature = handlerMethod.MethodInfo.ToString(), Description = (handlerMethod.MethodInfo.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute) ?.Description, Url = linkGenerator.GetPathByPage(page.DisplayName, handlerMethod.Name, new { area = page.AreaName }), MethodInfo = handlerMethod.MethodInfo, ActionDescriptor = page }); } areaInfo.Pages.Add(pageInfo); } } return(result); }
/// <summary> /// Initializes a new instance of the <see cref="ProxyService"/> class. /// </summary> /// <param name="BasePageLoader">The angle sharp service.</param> public ProxyService(IPageLoader <IHtmlLoadable> simpleLoader) { _consumedProxies = new ConcurrentBag <IProxy>(); _availableProxies = new ConcurrentBag <IProxy>(); _simpleLoader = simpleLoader; }
public PageNavigation(IPageLoader pageLoader, INavigationItemFactory navigationItemFactory) { this.pageLoader = pageLoader ?? throw new ArgumentNullException(nameof(pageLoader)); this.navigationItemFactory = navigationItemFactory ?? throw new ArgumentNullException(nameof(navigationItemFactory)); }
public SocketWebServer(IPageLoader pageLoader, IListener listener) { _pageLoader = pageLoader; _listener = listener; }
/// <summary> /// 初始化一个<see cref="PageHtmlGenerator"/>类型的实例 /// </summary> /// <param name="actionDescriptorCollectionProvider">操作描述集合提供程序</param> /// <param name="pageLoader">页面加载器</param> public PageHtmlGenerator(IActionDescriptorCollectionProvider actionDescriptorCollectionProvider, IPageLoader pageLoader) { _actionDescriptorCollectionProvider = actionDescriptorCollectionProvider; _pageLoader = pageLoader; }