viernes, 23 de julio de 2010

Trying to use an SPWeb object that has been closed or disposed and is no longer valid.

Buen día, les platico de algo muy común al momento de utilizar los objetos de tipo "SPSite" y "SPWeb". Cuando aparece la siguiente excepción "Trying to use an SPWeb object that has been closed or disposed and is no longer valid.", es muy facil de resolver, al menos en los casos que me a tocado ver. El problema se presenta al utilizar el siguiente código:

using (SPWeb ospWeb = SPContext.Current.Web)
{
Lógica de negocio.
}

Y la solución es no utilizar dentro de using los objetos que se obtienen del contexto, ya que al finalizar se le hace un dispose al objeto y como es el current, no lo permite, ahi es donde viene la excepción.

Saludos,