解决 正在尝试使用已关闭或释放并且不再有效的 SPWeb 对象

在遇到异常“正在尝试使用已关闭或释放并且不再有效的 SPWeb 对象”(Trying to use an SPWeb object that has
been closed or disposed and is no longer valid)时的解决办法如下:

将如下的语句:
using (SPSite _site = SPControl.GetContextSite(this.Context))
{
改为:
SPSite _site = SPControl.GetContextSite(this.Context); {

也就是说不能用using回收SPSite对象,否则会抛出如上异常。

 

其原因就是不该释放SPSite对象时,给释放了。

所以还要检查下看有无//web.Dispose();等没有。

你可能感兴趣的:(Web)