当前位置: 代码迷 >> SharePoint >> 关于SPSite.Dispose()的有关问题
  详细解决方案

关于SPSite.Dispose()的有关问题

热度:304   发布时间:2016-05-02 07:00:55.0
关于SPSite.Dispose()的问题
如果new的SPSite(site)不是null,site.Dispose()会出现错误么?
------解决思路----------------------
不太理解楼主的问题。 如果SPSite对象不是null, site.Dispose()是不会出错的。

不知道楼主说的错误,是指什么样的错误?


------解决思路----------------------
引用:
如果new的SPSite(site)不是null,site.Dispose()会出现错误么?

从代码角度讲肯定不会出现错误的。但是如果在dispose之后,继续使用这个site对象,就会有问题,因为当你释放一个SPSite对象的时候,通过这个SPSite获取的所有SPWeb对象都将被释放。所以之后的代码如果使用site或者web对象,SharePoint就会在log里记录错误信息:
Detected use of SPRequest for previously closed SPWeb object.    
Please close SPWeb objects when you are done with all objects obtained from them, but not before.