+1-888-365-2779
Try Now
More in this section

Forums / Designing with Sitefinity / Breadcrumbs Customizing

Breadcrumbs Customizing

35 posts, 0 answered
  1. Femy
    Femy avatar
    37 posts
    Registered:
    02 Jan 2008
    04 Sep 2008
    Link to this post
    Hi
    I have the pages created in my project as follows

    -All Pages
    --Home
    --Page1
        --Sub Page 1
        -- Sub Page 2
       -- Sub Page 3
    --Page2
       -- Sub Page 1
       -- Sub Page 2
       -- Sub Page 3
    --Page 3
    etc

    How do I get the breadcrumbs to show "Home > Page 1 > Sub Page 1". Right now it only shows Page 1 > Sub page 1.

    Pls help.
    TIA
    FR


  2. SelAromDotNet
    SelAromDotNet avatar
    912 posts
    Registered:
    18 Jul 2012
    04 Sep 2008
    Link to this post
    it looks like Home is not a parent of Page1 Page2, etc, so the sitemap doesn't render it as such. I ran into this as well, since I need the home page to "act" like a parent to everything else.

    I solved this by making a usercontrol that includes the Sifefinity Breadcrumb control, and placing a link to the home page before the breadcrumb. There may be a more straightforward way to do this, but I actually needed this customization so that I can change that root link if necessary for certain subpages.

    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="BreadcrumbControl.ascx.cs" Inherits="UserControls_Internal_BreadcrumbControl" %> 
    <%@ Register TagPrefix="sfweb" Namespace="Telerik.Cms.Web.UI" Assembly="Telerik.Cms.Web.UI"  %> 
     
    <h1> 
        <asp:HyperLink ID="lnkHome" runat="server" NavigateUrl="/" Text="My Home Page" /> &raquo;   
        <sfweb:Breadcrumb ID="bCrumb" runat="server" PathSeparator=" » " /> 
    </h1> 

    You can also override the onitemcreated event for the breadcrumb control and do further processing on each node if necessary.

    Then just drop this into the Template Editor or just include this control in your master page. hope this was helpful!
  3. Femy
    Femy avatar
    37 posts
    Registered:
    02 Jan 2008
    04 Sep 2008
    Link to this post
    Thanks for the response. I will be interested to know if there is a better solution as this, I thought, is a frequently used feature.
  4. Pepi
    Pepi avatar
    981 posts
    Registered:
    28 Oct 2016
    05 Sep 2008
    Link to this post
    Hello Femy,

    Another possible solution is to change the hierarchy of your SiteMap like this:

    --All Pages
    --Home
        --Page1
            --Sub Page 1
            -- Sub Page 2
            -- Sub Page 3
        --Page2
           -- Sub Page 1
           -- Sub Page 2
           -- Sub Page 3

    i.e. Page1, Page2, Page3 should become subpages of the Home page.

    Sincerely yours,
    Pepi
    the Telerik team

    Check out Telerik Trainer, the state of the art learning tool for Telerik products.
  5. SelAromDotNet
    SelAromDotNet avatar
    912 posts
    Registered:
    18 Jul 2012
    05 Sep 2008
    Link to this post
    wouldn't that change the url structure of the site tho? like instead of site.com/home and site.com/page1 it would become site.com/home and site.com/home/page1
  6. Femy
    Femy avatar
    37 posts
    Registered:
    02 Jan 2008
    05 Sep 2008
    Link to this post
    Good point SelArom. If this is true, I wudnt want that kind of url structure? Any other suggestions?
    TIA
    FR
  7. Pepi
    Pepi avatar
    981 posts
    Registered:
    28 Oct 2016
    08 Sep 2008
    Link to this post
    Hi Femy,

    Changing the hierarchy of the SiteMap will change the structure of the web site for sure. Unfortunately, the only other option to achieve the required functionality is to use the solution provided by Josh.

    Sincerely yours,
    Pepi
    the Telerik team

    Check out Telerik Trainer, the state of the art learning tool for Telerik products.
  8. Diana
    Diana avatar
    16 posts
    Registered:
    26 Nov 2008
    23 Jan 2009
    Link to this post
    I also had the same problem, but solved it differently.

    For CSS reasons, I am rendering my breadcrumb as an ordered list using an adapter (see http://www.sitefinity.com/support/forums/support-forum-thread/b1043S-btmemb.aspx ).  So SelArom's solution didn't quite fit for me as it put the home page outside of the list. 

    So to solve the problem, I just modified the RenderContents method in the breadcrumb adapter to add the home page (which is the first node child of the root) to the collection.

    protected override void RenderContents(HtmlTextWriter writer)
            {
                Telerik.Cms.Web.UI.Breadcrumb bc = (Telerik.Cms.Web.UI.Breadcrumb)Control;
                SiteMapPath item = (SiteMapPath)Control;
                SiteMapProvider Provider = ((System.Web.UI.WebControls.SiteMapPath)(Control)).Provider;
                SiteMapNodeCollection collection = new SiteMapNodeCollection();
                SiteMapNode node = Provider.CurrentNode;
                if (node != null)
                {
                    collection.Add(node);
                    while (node != Provider.CurrentNode.RootNode)
                    {
                        if (node.ParentNode != null)
                        {
                            node = node.ParentNode;
                            if (node != null)
                            {
                                collection.Add(node);
                            }
                        }
                    }
                    //add the first child of the rootnode (home)
                    collection.Add(Provider.CurrentNode.RootNode.ChildNodes[0]);

                }
                BuildItems(collection, true, writer);
                writer.WriteLine();
            }


    Diana
  9. Georgi
    Georgi avatar
    3583 posts
    Registered:
    28 Oct 2016
    26 Jan 2009
    Link to this post
    Hi,

    Thanks Diana. We have updated your account for providing this solution.

    Regards,
    Georgi
    the Telerik team

    Check out Telerik Trainer, the state of the art learning tool for Telerik products.
  10. Jacques
    Jacques avatar
    427 posts
    Registered:
    28 Jun 2007
    19 Dec 2009
    Link to this post
    We found that we too had a very similar situation to what Femy mentioned in her post and came up with the following simplified solution. Perhaps someone could comment to say if this route we have chosen has any flaws in it. The primary requirement here was to be able to add "Home" to the breadcrumb without too much hassle.

    We created a new user control with the HTML looking as follows: 
    1 <%@ Control Language="C#" AutoEventWireup="true" CodeFile="Breadcrumb.ascx.cs" Inherits="Extensions_Breadcrumbs_Breadcrumb" %> 
    2 <%@ Register Namespace="Telerik.Cms.Web.UI" TagPrefix="telerik" Assembly="Telerik.Cms.Web.UI" %> 
    3 <telerik:Breadcrumb ID="BackendBreadcrumbControl2" runat="server" PathSeparator=" " 
    4     RenderCurrentNodeAsLink="false" ShowStartingNode="True"
    5     <CurrentNodeStyle CssClass="hide" /> 
    6 </telerik:Breadcrumb> 
    7  

    and the C# looks like this: 
    1 using System; 
    2 using System.Collections.Generic; 
    3 using System.Linq; 
    4 using System.Web; 
    5 using System.Web.UI; 
    6 using System.Web.UI.WebControls; 
    7  
    8 public partial class Extensions_Breadcrumbs_Breadcrumb : System.Web.UI.UserControl 
    9
    10     protected void Page_Load(object sender, EventArgs e) 
    11     { 
    12         BackendBreadcrumbControl2.Provider.RootNode.Title = "Home"
    13         BackendBreadcrumbControl2.Provider.RootNode.Url = "/"
    14     } 
    15

    We then added this user control to the list of Sitefinity controls in the toolboxControls section of the web.config file as follows: 
    <add name="Custom Breadcrumb" section="Dundee" url="~/Extensions/Breadcrumbs/Breadcrumb.ascx" /> 

    During tests this approach worked well. 

    The one negative to this approach is multilingual sites where the word Home is being used in the C# code, but this could be overcome by using a global resx file. 

    Regards,
    Jacques
  11. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    19 Dec 2009
    Link to this post
    Hello J.Hov,

    It will work as  a temporary solution, but hardcoding is not a good practice. The better option is using Sitefinity's API and working with properties.

    sample code that illustrates custom control that inherits from Breadcrumb:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using Telerik.Cms.Web.UI;
    using Telerik.Cms.Web;
    using Telerik;
    using System.Web.UI.WebControls;
    using Telerik.Cms;
      
    public class  CustomBreadCrumb : Breadcrumb
    {
        public CustomBreadCrumb()
        {
      
        }
        [WebEditor("Telerik.Cms.Web.UI.DhlUrlEditor, Telerik.Cms")]
        public string SetHomePage
        {
            get
            {
                object o = this.ViewState["SetHomePage"];
                if(o == null)
                    return UrlHelper.HomePage.Url;
                return (string)o;
            }
            set
            {
                this.ViewState["SetHomePage"] = value;
            }
        }
      
      
        public string HomePageTitle
        {
            get
            {
                Guid pageID = UrlHelper.HomePage.ID;
                CmsManager manager = new CmsManager();
                ICmsPage page = manager.GetPage(pageID) as ICmsPage;
                object obj = this.ViewState["HomePageTitle"];
                if (obj == null)
                    return page.MenuName;
                return (string)obj;
            }
            set
            {
                this.ViewState["HomePageTitle"] = value;
            }
        }
      
      
        protected override void InitializeItem(System.Web.UI.WebControls.SiteMapNodeItem item)
        {
      
            CmsSiteMapNode cmsNode = item.SiteMapNode as CmsSiteMapNode;
            if (cmsNode != null)
            {
                HyperLink link = new HyperLink();
                link.NavigateUrl = SetHomePage;
                link.Text = HomePageTitle + PathSeparator;
                Controls.Add(link);
            }
          base.InitializeItem(item);
        }
    }


    Regards,
    Ivan Dimitrov
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
  12. Jacques
    Jacques avatar
    427 posts
    Registered:
    28 Jun 2007
    19 Dec 2009
    Link to this post
    Hi Ivan,

    Is this a control that I would create in the App_Code folder in a normal C# file? If so how would I then add this to a page or to the Sitefinity Toolbox controls? 

    Regards,
    Jacques
  13. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    19 Dec 2009
    Link to this post
    Hello J.Hov,

    You need to create a new class in App_Code. Another option is creating a class library and generate a dll . You can register the control in your web.config file - toolboxControls section. You can also find the following articles useful

    Inheritance (C# Programming Guide)
    Inheritance

    All the best,
    Ivan Dimitrov
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
  14. Jacques
    Jacques avatar
    427 posts
    Registered:
    28 Jun 2007
    19 Dec 2009
    Link to this post
    Hi Ivan,

    I managed to create the control in the App_Code directory and then proceeded to use it in another user control. 

    One problem that I found is that multiple "home" nodes were rendered which was fixed when I adjusted this portion of your code: 
    1 protected override void InitializeItem(System.Web.UI.WebControls.SiteMapNodeItem item) 
    2         { 
    3  
    4             CmsSiteMapNode cmsNode = item.SiteMapNode as CmsSiteMapNode; 
    5             if (cmsNode != null && item.ItemType == SiteMapNodeItemType.Root) 
    6             { 
    7                 HyperLink link = new HyperLink(); 
    8                 link.NavigateUrl = SetHomePage; 
    9                 link.Text = HomePageTitle + PathSeparator; 
    10                 Controls.Add(link); 
    11             } 
    12             base.InitializeItem(item); 
    13         } 

    So I only add the HyperLink control if the node is of type root. 

    It works now, but I wanted to find out if that is the best condition to check for ? (Root that is)

    Regards,
    Jacques
  15. Chris Williams
    Chris Williams avatar
    14 posts
    Registered:
    25 Oct 2004
    05 Feb 2010
    Link to this post
    Hi, sorry for the basic question, but is this the right way to modify the web config to load the CustomBreadcrumb control?

    Edit: I figured it out.  Here's the corrected entry.

    <add name="Custom Breadcrumb" section="Navigation" type="CustomBreadCrumb, App_Code"/>

    I've added the public class CustomBreadCrumb to my App_Code folder.

    thanks
  16. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    05 Feb 2010
    Link to this post
    Hello Chris Williams,

    You can also compile it to a dll and put it in your bin.

    Best wishes,
    Ivan Dimitrov
    the Telerik team

    Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
    Follow the status of features or bugs in PITS and vote for them to affect their priority.
  17. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    21 Sep 2010
    Link to this post
    OK.  I am at a complete loss here.  I'm trying to figure out how to customize the breadcrumb in sitefinity.  I added the code listed above in a Class in the App_Code.  called CustomBreadCrumb.cs

    I then added this line in the web.config in the ToolboxControls
    <add name="Custom Breadcrumb" section="Navigation" type="CustomBreadCrumb, App_Code"/>
    and when I go to the navigation in sitefinity I see an "Error Loading Control"  I'm a little new to sitefinity so I don't know how this is supposed to work.  is there any examples that actually walk you thru the process of "Customizing" the breadcrumb in sitefinity?  I would have thought I would have had to create a user control but can't figure out how to create a user control to use the new Custom Breadcrumb code.

    Any help on how to do this would be appreciated.
  18. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    21 Sep 2010
    Link to this post
    Hello Ted,

    You are getting  "Error loading control" because the type you have used is not valid for the context you use to run the control. Our control Breadcrumb inherits from the ASP.NET SiteMapPath from where you can see all methods, properties and events.

    You can use user control when you want to set some properties or make small modifications to the control behavior, but changes to the base classes could not be made through a user control.

    Regards,
    Ivan Dimitrov
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  19. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    21 Sep 2010
    Link to this post
    OK.  Let me explain what I am trying to do and maybe you can tell me the proper steps to take to get it to work.  I want to use the breadcrumb control, however, I want to hide the "Group pages" from the control and display the "Menu Label" in the breadCrumb.

    My guess is from the sounds of things that I just need to create a user control which I have in a folder called UserControls I created a userControl CustomBreadCrumb.ascx.  however that is as far as I have gotten.   can you give me any help on what to do next?
  20. Radoslav Georgiev
    Radoslav Georgiev avatar
    3370 posts
    Registered:
    01 Feb 2016
    22 Sep 2010
    Link to this post
    Hello Ted,

    You can refer to this forum thread which explains how to define custom appearance for pages which are group pages within the bread crumb control: Page group in Breadcrumb.

    Kind regards,
    Radoslav Georgiev
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  21. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    22 Sep 2010
    Link to this post
    OK.  I have that link and the code but what do I do with it?  I found that link before and created a class in my App_Code folder called CustomBreadCrumb.cs and put the exact code in the link you sent me in that class and I am now back to the Error loading control message again.  there is some step in there that I am not doing to get this working correctly.
  22. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    22 Sep 2010
    Link to this post
    Hello Ted,

    The type you use to register the control is not correct. Here is the signature

    <add name="NameOfTheControl" section="ToolboxSection" type="ClassName, Assembly"/>


    Greetings,
    Ivan Dimitrov
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  23. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    22 Sep 2010
    Link to this post
    I am using this
    <add name="CustomBreadcrumb" section="Navigation" type="CustomBreadCrumb, App_Code" />

    does that not look correct with the same code in the other link in CustomBreadcrumb.cs in the App_Code folder?
  24. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    22 Sep 2010
    Link to this post
    Again, I think my confusion is that I am missing a step somewhere.  I have the code but can you outline the steps needed to get the modified code (in the link you sent earlier) into a control that I can use in Sitefinity?  I have created user controls in Visual studio to use in Sitefinity pages but never one that inherited from a sitefinity control.

    I appreciate the help and patients to help me understand the proper way to do this.

    Oh, an I am working via FTP connection thru Visual studio to a remote server if that makes any difference.  I wouldn't think that it would but wanted to mention my connection anyway just in case it does.
  25. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    23 Sep 2010
    Link to this post
    OK.  I think I am finally getting close.  I have the control working except one bug.

    on this line
    if (cmsSiteMapNode.Parent != null && cmsSiteMapNode.CmsPage.Parent.PageType == Telerik.Cms.CmsPageType.Group)

    says Object reference not set to an instance of an object.

    again, I'm working on a remote server via FTP.  is that an issue or is there something else I need to do?  from what I can tell visual studio doesn't  know what CmsSiteMapNode is

    when I type in using Telerik. I get a dropdown but only has charting, pdf and web in it.  is there something else I need?
  26. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    23 Sep 2010
    Link to this post
    Hi Ted,

    CmsSiteMap node is part of Telerik.Cms.Web. You can add reference to your class to Telerik.Cms.Web by typing  "using Telerik.Cms.Web;"

    The error you are getting is null reference exception, because you use an object that does not exist in the current requests and it is null.

    Kind regards,
    Ivan Dimitrov
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  27. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    23 Sep 2010
    Link to this post
    Thanks Ivan but I have that in the using statement but visual studio doesn't see it.  as I said, when I type it in visual studio doesn't see Cms as an option but I do have these in there as that was what is in the sample code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using Telerik.Cms.Web.UI;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Telerik.Cms.Web;
    using Telerik;
    using Telerik.
    using Telerik.Cms.Web.UI;
    using System.ComponentModel;

    in the Bin folder I do see
    Telerik.Cms.Web.UI.dll
  28. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    23 Sep 2010
    Link to this post
    here is my code if that helps.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using Telerik.Cms.Web.UI;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Telerik.Cms.Web;
    using Telerik;
    using Telerik.Cms.Web.UI;
    using System.ComponentModel;
      
    public class CustomBreadcrumb : Breadcrumb, IEmptyControl
      
    {
           protected override void InitializeItem(System.Web.UI.WebControls.SiteMapNodeItem item)
        {
            ITemplate template1 = null;
            Style style1 = null;
            SiteMapNodeItemType type1 = item.ItemType;
            SiteMapNode node1 = item.SiteMapNode;
            switch (type1)
            {
                case SiteMapNodeItemType.Root:
                    if (this.ShowStartingNode)
                    {
                        template1 = (this.RootNodeTemplate != null) ? this.RootNodeTemplate : this.NodeTemplate;
                        style1 = base.RootNodeStyle;
                        break;
                    }
                    this.skipNextSeparator = true;
                    return;
      
                case SiteMapNodeItemType.Parent:
                    template1 = this.NodeTemplate;
                    style1 = base.NodeStyle;
                    break;
      
                case SiteMapNodeItemType.Current:
                    template1 = (this.CurrentNodeTemplate != null) ? this.CurrentNodeTemplate : this.NodeTemplate;
                    style1 = base.CurrentNodeStyle;
                    break;
      
                case SiteMapNodeItemType.PathSeparator:
                    if (!this.skipNextSeparator)
                    {
                        template1 = this.PathSeparatorTemplate;
                        style1 = base.PathSeparatorStyle;
                        break;
                    }
                    this.skipNextSeparator = false;
                    return;
            }
            if (template1 == null)
            {
                if (type1 == SiteMapNodeItemType.PathSeparator)
                {
                    Literal literal1 = new Literal();
                    literal1.Mode = LiteralMode.Encode;
                    literal1.Text = this.PathSeparator;
                    item.Controls.Add(literal1);
                    item.ApplyStyle(style1);
                }
                else if (!((type1 != SiteMapNodeItemType.Current) || this.RenderCurrentNodeAsLink))
                {
      
                    Literal literal2 = new Literal();
                    literal2.Mode = LiteralMode.Encode;
                    literal2.Text = node1.Title;
                    item.Controls.Add(literal2);
                    item.ApplyStyle(style1);
                }
                else
                {
                      
                    CmsSiteMapNode cmsSiteMapNode = (CmsSiteMapNode)SiteMap.Provider.FindSiteMapNode(node1.Url);
                    if (cmsSiteMapNode != null)
                    {
                        if (cmsSiteMapNode.Parent != null && cmsSiteMapNode.CmsPage.Parent.PageType == Telerik.Cms.CmsPageType.Group)
                        {
                            Literal literal2 = new Literal();
                            literal2.Mode = LiteralMode.Encode;
                            literal2.Text = node1.Title;
                            item.Controls.Add(literal2);
                            item.ApplyStyle(style1);
                            item.Visible = false;
                        }
                        else
                        {
                            HyperLink link1 = new HyperLink();
                            link1.EnableTheming = false;
                            link1.Enabled = this.Enabled;
                            link1.NavigateUrl = base.ResolveUrl(node1.Url);
                            link1.Text = HttpUtility.HtmlEncode(node1.Title);
                            if (this.ShowToolTips)
                            {
                                link1.ToolTip = node1.Description;
                            }
                            item.Controls.Add(link1);
                            link1.ApplyStyle(style1);
                        }
                    }
                }
            }
            else
            {
                template1.InstantiateIn(item);
                item.ApplyStyle(style1);
            }
      
        }
        [Browsable(false)]
        public bool IsEmpty
        {
            get
            {
                return this.DesignMode;
            }
        }
      
        public string SetEmptyControlDefaultMessage()
        {
            return "The control cannot be rendered in design mode.";
        }
      
        private bool skipNextSeparator;
      
    }
  29. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    25 Nov 2016
    24 Sep 2010
    Link to this post
    Hi Ted,

    I created a sample project that where the custom breadcrumb control is added. The control is located in App_Code folder and registered in the web.config. CustomBreadcrumb has been altered due to some issues with FindSiteMapNode that you use. You can access the project by using admin for username and password. Database backup is added to the zip archive.

    Regards,
    Ivan Dimitrov
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  30. Ted
    Ted avatar
    28 posts
    Registered:
    08 Jan 2008
    24 Sep 2010
    Link to this post
    OK.  dowloaded it and made the changes.  dragged it onto my page and get this error


    Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).

    Source Error:

    Line 76:                 CmsSiteMapNode cmsSiteMapNode = (CmsSiteMapNode)SiteMap.Provider.FindSiteMapNode(node1.Url);
    Line 77:                 var cmsManager = new CmsManager();
    Line 78: var g = (ICmsPage)cmsManager.GetPage(new Guid(node1.Key));Line 79:                 if (g.PageType != CmsPageType.Group)
    Line 80:                 {
Register for webinar
35 posts, 0 answered
1 2