我有一个名为MySite的网站 在这个站点中,我有一个名为Resources的文档库和两个名为site1和site2的子站点。
在MySite上我有一个顶部导航栏,上面有链接: MySite |资源| Site1 |站点2
当我尝试获取导航节点时,我只得到其中一个,那就是资源(我想获取site1和site2以便我可以修改它们)。如何获取所有节点,无论它是文档库还是子网站?
我使用的代码:
SPNavigationNodeCollection topNavBar = parentID.Navigation.TopNavigationBar;
string nodes ="";
foreach (SPNavigationNode node in topNavBar)
{
nodes += node.Url.ToString();
}
label1.Text = nodes;
为什么我只获取Resources节点?
修改 我可以使用
添加到父网站的正确链接newWeb.ParentWeb.Navigation.TopNavigationBar.AddAsLast(new SPNavigationNode(newSiteName,newSiteName +“/ pages / home.aspx”));
这将使我进入维基,并且由于子网站继承导航,链接将在它们上面相同。然而,有了这个,我得到两个链接到维基,一个使用上面的代码和一个已经破坏,所以我尝试删除那个以类似于我添加正确的方式。我希望尽管有更方便的方法。
答案 0 :(得分:1)
我认为资源| Site1 | Site2 是网站集。使用以下代码获取所有网站集:
SPSite site = new SPSite("siteURL");
SPWeb web = site.OpenWeb();
SPSiteCollection coll = web.webs;
您将获得所有网站集资源,Site1,Site2 。