コード例 #1
0
        string GenerateMain(ref bool result)
        {
            SiteMapBuilder smb = new SiteMapBuilder();

            smb.AddLocalUrl("pages/view.aspx?common-contactinfo", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-aboutehuaho", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-honeruser", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-wflist", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-friendlink", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-rightnotice", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-recruitment", DateTime.Now);
            smb.AddLocalUrl("pages/view.aspx?common-sitemap", DateTime.Now);
            smb.AddLocalUrl("/register.aspx", DateTime.Now);
            smb.AddLocalUrl("/login.aspx", DateTime.Now);
            smb.AddLocalUrl("/main.aspx", DateTime.Now);
            smb.AddLocalUrl("/pages/view.aspx?product-productlist", DateTime.Now);
            smb.AddLocalUrl("/pages/view.aspx?news-newslist", DateTime.Now);
            smb.AddLocalUrl("/pages/view.aspx?product-brand", DateTime.Now);
            smb.AddLocalUrl("/pages/view.aspx?product-category", DateTime.Now);
            smb.AddLocalUrl("/pages/view.aspx?product-industry", DateTime.Now);
            smb.AddLocalUrl("/Pages/Common/SiteMap.aspx", DateTime.Now);
            smb.AddLocalUrl("/WebAdmin/ehuaho_logo.gif", DateTime.Now);
            smb.AddLocalUrl("/WebAdmin/ehuaho_logo_s.gif", DateTime.Now);

            smb.Save(GlobalSettings.MapPath("~/sitemap/main.xml"));
            result = true;
            return("成功生成/更新【总目录】地图!");
        }
コード例 #2
0
        public async Task <IActionResult> Index()
        {
            var siteMapBuilder = new SiteMapBuilder();

            siteMapBuilder.WithLocation("/", null, null);
            siteMapBuilder.WithLocation("/about", null, null);

#pragma warning disable IDE0050

            var articles = await _applicationDbContext.Articles
                           .Where(x => x.DatePublished != null)
                           .OrderByDescending(x => x.DatePublished)
                           .Select(x => new { x.Slug, x.DatePublished })
                           .ToListAsync();

#pragma warning restore IDE0050

            foreach (var article in articles)
            {
                var itemUrl =
                    $"/{article.DatePublished.Value.Year:0000}/" +
                    $"{article.DatePublished.Value.Month:00}/" +
                    $"{article.DatePublished.Value.Day:00}/" +
                    $"{article.Slug}";

                siteMapBuilder.WithLocation(itemUrl, article.DatePublished.Value, ChangeFrequency.Monthly);
            }

            return(Content(siteMapBuilder.Build(), "application/xml"));
        }
コード例 #3
0
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            string         currenturl = filterContext.RouteData.Values["controller"] + "/" + filterContext.RouteData.Values["action"];
            SiteMapBuilder builder    = new SiteMapBuilder(currenturl);

            filterContext.Controller.ViewBag.sitemapnodes = builder.GetSiteMapPath().Reverse <MySiteMapNode>();
        }
コード例 #4
0
 private void AddChildNodes(SiteMapNode parent, ReadOnlyCollection <SiteMapNodeInfo> children)
 {
     if (children.Count > 0)
     {
         foreach (SiteMapNodeInfo child in children)
         {
             SiteMapNode childNode = CreateSiteMapNode(child);
             AddNode(childNode, parent);
             AddChildNodes(childNode, SiteMapBuilder.GetChildren(child.Key));
         }
     }
 }
コード例 #5
0
        public string Maker(SiteMapBuilder siteMapBuilder)
        {
            siteMapBuilder.Header();
            siteMapBuilder.Footer();
            foreach (var item in _data)
            {
                siteMapBuilder.Page(item);
            }
            siteMap = siteMapBuilder.GetContent();

            return(siteMap);
        }
コード例 #6
0
        string GenerateBrand(ref bool result)
        {
            List <ProductBrand> pbs = ProductBrands.GetProductBrands();
            SiteMapBuilder      smb = new SiteMapBuilder();

            foreach (ProductBrand pb in pbs)
            {
                smb.AddLocalUrl("pages/view.aspx?product-brand&ID=" + GlobalSettings.Encrypt(pb.BrandID.ToString()), DateTime.Now);
            }
            smb.Save(GlobalSettings.MapPath("~/sitemap/brands.xml"));
            result = true;
            return("成功生成/更新【产品行业】地图!");
        }
コード例 #7
0
        string GenerateIndustry(ref bool result)
        {
            List <ProductIndustry> pbs = ProductIndustries.GetProductIndustries();
            SiteMapBuilder         smb = new SiteMapBuilder();

            foreach (ProductIndustry pb in pbs)
            {
                smb.AddLocalUrl("pages/view.aspx?product-industry&ID=" + GlobalSettings.Encrypt(pb.IndustryID.ToString()), DateTime.Now);
            }
            smb.Save(GlobalSettings.MapPath("~/sitemap/industries.xml"));
            result = true;
            return("成功生成/更新【产品品牌】地图!");
        }
コード例 #8
0
        string GenerateCategory(ref bool result)
        {
            List <ProductCategory> cats = ProductCategories.GetCategories();
            SiteMapBuilder         smb  = new SiteMapBuilder();

            foreach (ProductCategory cat in cats)
            {
                smb.AddLocalUrl("pages/view.aspx?product-category&ID=" + GlobalSettings.Encrypt(cat.CategoryID.ToString()), DateTime.Now);
            }
            smb.Save(GlobalSettings.MapPath("~/sitemap/categories.xml"));
            result = true;
            return("成功生成/更新【产品分类】地图!");
        }
コード例 #9
0
        /// <summary>
        /// Determines whether the specified  <see cref="SiteMapNode"/> object can be
        /// viewed by the user in the specified context.
        /// </summary>
        /// <param name="node">The <see cref="SiteMapNode"/> that is requested by the user.</param>
        protected virtual bool IsAccessibleToUser(SiteMapNode node)
        {
            bool result = true;

            if (AuthorizationService != null)
            {
                string rule = SiteMapBuilder.GetAuthorizationRule(node.Key);
                if (rule != null)
                {
                    result = AuthorizationService.IsAuthorized(rule);
                }
            }
            return(result);
        }
コード例 #10
0
        /// <summary>
        /// Builds the <see cref="SiteMap"/> managed by the provider.
        /// </summary>
        /// <returns>The root <see cref="SiteMapNode"/> for the provider.</returns>
        public override SiteMapNode BuildSiteMap()
        {
            if (!_isInitialized)
            {
                lock (_lockObject)
                {
                    if (!_isInitialized)
                    {
                        SiteMapNodeInfo rootNodeInfo = SiteMapBuilder.RootNode;
                        _rootNode = CreateSiteMapNode(rootNodeInfo);
                        AddChildNodes(_rootNode, SiteMapBuilder.GetChildren(rootNodeInfo.Key));

                        _isInitialized = true;
                    }
                }
            }
            return(_rootNode);
        }
コード例 #11
0
        string GenerateProduct(ref bool result)
        {
            ProductQuery pq = new ProductQuery();

            pq.HasPublished = true;
            pq.PageIndex    = 0;
            pq.PageSize     = int.MaxValue;

            List <Product> ps  = Products.GetProductList(pq);
            SiteMapBuilder smb = new SiteMapBuilder();

            foreach (Product p in ps)
            {
                smb.AddLocalUrl("pages/view.aspx?product-product&ID=" + GlobalSettings.Encrypt(p.ProductID.ToString()), DateTime.Now);
            }
            smb.Save(GlobalSettings.MapPath("~/sitemap/products.xml"));
            result = true;
            return("成功生成/更新【产品】地图!");
        }
コード例 #12
0
        string GenerateArticle(ref bool result)
        {
            ProductQuery pq = new ProductQuery();

            pq.HasPublished = true;
            pq.PageIndex    = 0;
            pq.PageSize     = int.MaxValue;

            List <Article> arts = ArticleManager.GetAllArticles();
            SiteMapBuilder smb  = new SiteMapBuilder();

            foreach (Article p in arts)
            {
                smb.AddLocalUrl("pages/view.aspx?news-newsdetail&id=" + GlobalSettings.Encrypt(p.ID.ToString()), DateTime.Now);
            }
            smb.Save(GlobalSettings.MapPath("~/sitemap/articles.xml"));
            result = true;
            return("成功生成/更新【资讯】地图!");
        }
コード例 #13
0
 public SiteMapBuilderTests()
 {
     _siteMap = new Mock<SiteMapBase>();
     _builder = new SiteMapBuilder(_siteMap.Object);
 }
コード例 #14
0
        public void RadSiteMapBuilder_operator_should_return_correct_builder()
        {
            SiteMapBuilder builder = _siteMap.Object;

            Assert.NotNull(builder);
        }
コード例 #15
0
        public void ToBuilder_should_return_new_builder()
        {
            SiteMapBuilder builder = _siteMap.Object;

            Assert.NotNull(builder);
        }
コード例 #16
0
 public HomeController(SiteMapBuilder siteMapBuilder, RobotsBuilder robotsBuilder)
 {
     _siteMapBuilder = siteMapBuilder;
     _robotsBuilder  = robotsBuilder;
 }
コード例 #17
0
 public SiteMapBuilderTests()
 {
     _siteMap = new Mock <SiteMapBase>();
     _builder = new SiteMapBuilder(_siteMap.Object);
 }