我正在嘗試爲Sharepoint 2010製作網站地圖,該網站地圖將列出每個網站和該網站的當前導航項目。網站之間的導航是通過頂級導航完成的。但是,我在爲每個網站獲取當前導航項目時遇到問題。看來,每次我爲Web獲取PortalSiteMapProvider時,都會返回整個網站集的提供者。我如何獲得該網站的物品?我爲每個網站運行此代碼我想要獲得的項目:獲取所有網站集和網站的當前導航項 - SP2010
var provider = new PortalSiteMapProvider();
provider.NavigationType = PortalNavigationType.Current;
provider.CurrentWeb = web;
var rootNode = provider.RootNode;
任何人都知道該從哪裏下去?
編輯: 因此,訪問每個網站集並運行此代碼是不可能的。 PortalSiteMapProvider不允許它。但是,可以使用位於layouts文件夾中的ashx運行此代碼。我只需要從網站收集我想列舉訪問ashx的文件,它會工作得很好:)