Beispiel #1
0
 public BreadcrumbHelper(
     IPageDataContextRetriever pageDataContextRetriever,
     IPageUrlRetriever pageUrlRetriever,
     IBreadcrumbsRenderer breadcrumbsRenderer,
     IPageRetriever pageRetriever,
     BreadcrumbsWidgetProperties breadcrumbsWidgetProperties)
 {
     this.pageDataContextRetriever = pageDataContextRetriever;
     this.pageUrlRetriever         = pageUrlRetriever;
     this.breadcrumbsRenderer      = breadcrumbsRenderer;
     this.pageRetriever            = pageRetriever;
     Properties = breadcrumbsWidgetProperties;
 }
        public static void AddBreadcrumbs(
            this IServiceCollection services,
            Action <BreadcrumbsWidgetProperties> configure = null,
            IBreadcrumbsRenderer renderer = null)
        {
            services.AddSingleton <BreadcrumbHelper>();

            // Register renderer
            if (renderer is null)
            {
                renderer = new DefaultBreadcrumbsRenderer();
            }
            services.AddSingleton(renderer);

            // Register widget properties
            var props = new BreadcrumbsWidgetProperties().SetDefaults();

            if (configure is object)
            {
                configure(props);
            }
            services.AddSingleton(props);
        }