public Breadcrumb[] PushBreadcrumb(string link, string text, int level)
        {
            if (String.IsNullOrEmpty(text))
            {
                text = link;
            }

            var bc = new Breadcrumb { Link = link, Text = text, Level = level };

            while (stack.Count > 0 && stack.Peek().Level >= level)
            {
                stack.Pop();
            }

            stack.Push(bc);
            return stack.ToArray();
        }
Пример #2
0
        public Breadcrumb[] PushBreadcrumb(string link, string text, int level)
        {
            if (String.IsNullOrEmpty(text))
            {
                text = link;
            }

            var bc = new Breadcrumb {
                Link = link, Text = text, Level = level
            };

            while (stack.Count > 0 && stack.Peek().Level >= level)
            {
                stack.Pop();
            }

            stack.Push(bc);
            return(stack.ToArray());
        }
        public static string Breadcrumb(this HtmlHelper helper, Breadcrumb[] breadcrumbs)
        {
            string arrow = "<span class='breadcrumbs-arrow'> » </span>";

            StringBuilder sb = new StringBuilder();
            sb.Append("<div class='breadcrumbs'>");
            foreach (var breadcrumb in breadcrumbs.Reverse())
            {
                sb.Append(arrow)
                    .Append("<span class='breadcrumb'><a href='")
                    .Append(breadcrumb.Link)
                    .Append("'>")
                    .Append(breadcrumb.Text)
                    .Append("</a></span>");
            }
            sb.Append("</div>");
            sb.Replace("class='breadcrumbs'>" + arrow, "class='breadcrumbs'>");
            return sb.ToString();
        }