essayer d'utiliser un objet SPWeb qui a été fermé ou disposé et ne sont plus valides
-
16-10-2019 - |
Question
Quelqu'un peut-il s'il vous plaît dites-moi ce qui ne va pas avec ce code?
Button1_Click vide protégé (expéditeur d'objet, EventArgs e) { utilisant (SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb) {
SPList oList = oWebsiteRoot.Lists["Tasks"];
SPQuery oQuery = new SPQuery();
oQuery.Query = "<Where><Eq><FieldRef Name='Status'/>" +
"<Value Type='Text'>Completed</Value></Eq></Where>";
SPListItemCollection collListItems = oList.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
Response.Write(SPEncode.HtmlEncode(oListItem["Title"].ToString()) +
"<BR>");
}
}
}
La solution
Fondamentalement, vous ne devriez pas jeter le rootweb, si vous utilisez le SPContext. Microsoft a mis à jour les meilleures pratiques
ici est un exemple mentionner
http: //blogs.msdn.com/b/rogerla/archive/2008/10/04/updated-spsite-rootweb-dispose-guidance.aspx
Autres conseils
Are u Mise au rebut tout SPWeb ou objet SPSite que vous intantiated en utilisant l'objet SPContext? Si oui, alors vous ne devez pas disposer de l'un d'eux.
Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange