避免创建不必要的SPWeb对象
来源:互联网 发布:php log日志 linux 编辑:程序博客网 时间:2024/05/18 18:42
http://msdn.microsoft.com/en-us/library/ff407443(v=office.14).aspx
Usethe WebsInfo property whenever possible
SPWeb对象会占用很大的内存,如果处理不当,可能会引起内存泄漏。如果要遍历一下一个网站集下面所有的站点,一种可能的办法是遍历所有的SPWeb对象,但是这样就导致了在内存里创建了很多的web对象,占用内存。
避免这种情况的一种办法是,避免使用SPWeb,而是使用WebsInfo。WebsInfo包含了一些web的基本信息,包括:
- Configuration
- CustomMasterUrl
- Description
- Id
- Language
- LastItemModifiedDate
- MasterUrl
- ServerRelativeUrl
- Title
- UIVersion
- UIVersionConfigurationEnabled
- WebTemplateId
下面的代码,演示了如何使用WebsInfo对象,来避免生成SPWeb对象。
SPSite site = SPContext.Current.Site;
SPWebCollection subWebs = site.AllWebs;
foreach (SPWebInfo webInfoinsubWebs.WebsInfo)
{
//Create a result object that containsinformation about each SPWeb in the collection.
var result = webInfo.Title +
webInfo.ServerRelativeUrl+
webInfo.Description+
webInfo.Id+
webInfo.Language+
webInfo.LastItemModifiedDate+
webInfo.WebTemplateId+
webInfo.Configuration+
webInfo.UIVersionConfigurationEnabled+
webInfo.UIVersion+
webInfo.MasterUrl+
webInfo.CustomMasterUrl;
}
如果你想知道这种方法道题能提升多少运行效率,请参考 The SPWebCollection.WebsInfo property .
- 避免创建不必要的SPWeb对象
- 避免创建不必要的对象
- 避免创建不必要的对象
- 避免创建不必要的对象
- 避免创建不必要的对象
- 避免创建不必要的对象
- 避免创建不必要的对象。
- 避免创建不必要的对象
- 05、避免创建不必要的对象
- EffectiveJava-避免创建不必要的对象
- 第五条:避免创建不必要的对象
- 5、避免创建不必要的对象
- EffactiveJava-避免创建不必要的对象
- 05-避免创建不必要的对象
- 高效Java05:避免创建不必要的对象
- effective--避免创建不必要的对象
- effictive--避免创建不必要的对象
- Effective Java -- 避免创建不必要的对象
- android Activity实现从底部弹出或滑出选择菜单或窗口
- DBCP和JDBC学习总结(应用篇)
- xpath定位中starts-with、contains和text()的用法
- 简单vnc-server设置[centos6]
- 备考ocp_ORACLE专题之安装
- 避免创建不必要的SPWeb对象
- 树的递归和非递归遍历
- 级联检测器
- iOS 判断数组为空
- 谨慎使用String作为HashMap的Key
- 辛星整理Linux中的lvm
- 2015年学习计划让自己飞起来
- Vmware中安装Vmware Tools
- INFRASTRUCTURE TRACKING WITH PASSIVE MONITORING AND ACTIVE PROBING