First, the short answer: this method really returns the located object. An object should not be used after its removal, since it is no longer in a reliable state, and any further operation performed on this object should (theoretically) throw an ObjectDisposedException .
Now, after a short spurt, the SharePoint objects do not seem to follow this rule. Not only does SPWeb never throw an ObjectDisposedException after removing it, but it actually checks this case in the Request property and restores the actual SPRequest from its internal state if it was deleted.
It seems that at least SPWeb was designed to be fully functional even in a remote state. Why i do not know. Perhaps this is for hosting client code, like the one you are working on. Maybe this is some kind of complicated optimization that I cannot understand.
However, I suggest you not rely on this behavior because it may change in the future (although, given Microsoft’s policy regarding backward compatibility with error for errors, it cannot).
And of course, you will still test a new instance of SPRequest , which can be quite expensive. Never, never, use a located object, even if SharePoint allows you to deal with it.
source share