如何在Sharepoint 2007中删除SPNavigationNodes的缓存?

时间:2009-03-17 08:59:32

标签: sharepoint sharepoint-2007

我在Sharepoint有一个网站。

如您所知,在设置中,用户可以根据需要在浏览中订购网站和页面,然后您可以使用以下订单获取这些项目:

SPWeb web = CurrentSite.OpenWeb(currentSite);
 SPNavigation nav = web.Navigation;
 SPNavigationNodeCollection nodeColl = nav.QuickLaunch;

我遇到的问题是有一个缓存,每次用户添加网页时,我用web.Navigation.QuickLaunch获得的列表与之前相同。

删除缓存的唯一方法是进入探索并更改项目的顺序,然后重新构建它并接受表单。

有人可以告诉我,我是否可以用其他方式做到这一点?

1 个答案:

答案 0 :(得分:0)

我不是百分百肯定,但是尝试检索SPWeb对象的新副本而不是使用当前上下文中的副本:

using ( SPSite l_site = new SPSite(SPContext.Current.Site.Url); )
{
  using ( SPWeb l_web = l_site.OpenWeb() )
  {
    ..
  }
}