this code run yesterday very well and today I've been trying to solve this error for hour now :
Please close SPWeb objects when you are done with all objects obtained from them, but not before
I tried to close each opened web by it still doesn't work !! here's my code I hope someone can help me !
protected void loadItemsFromCorrList(string contentTypeName)
{
using (SPSite mySite = new SPSite(SPContext.Current.Web.Site.Url))
{
// set a data table to fill GridView control with Types Items
SPListItemCollection collListItems = getAllCorrListItemsforCT(contentTypeName);
DataTable GVdataSource = new DataTable();
GVdataSource.Columns.Add(Fields.CorrListFldTypesIN, typeof(string));
GVdataSource.Columns.Add(Fields.CorrListFldValeurIN);
GVdataSource.Columns.Add(Fields.CorrListFldOrdreIN);
foreach (SPListItem myListItem in collListItems)
{
DataRow myTypeValueOrderRow = GVdataSource.NewRow();
myTypeValueOrderRow[Fields.CorrListFldTypesIN] = myListItem[Fields.CorrListFldTypesIN].ToString();
myTypeValueOrderRow[Fields.CorrListFldValeurIN] = myListItem[Fields.CorrListFldValeurIN];
myTypeValueOrderRow[Fields.CorrListFldOrdreIN] = myListItem[Fields.CorrListFldOrdreIN];
GVdataSource.Rows.Add(myTypeValueOrderRow);
}
TypeValueOrderGV.DataSource = GVdataSource;
TypeValueOrderGV.DataBind();
}
}
protected SPListItemCollection getAllCorrListItemsforCT(string myCTName)
{
SPList corrList = getSelectedList(Fields.CorrListName);
using (SPSite mySite = new SPSite(SPContext.Current.Web.Site.Url))
{
SPListItemCollection rLIC = null;
using (SPWeb myWeb = mySite.OpenWeb())
{
if (corrList != null)
{
SPQuery myQuery = new SPQuery();
myQuery.Query = "<Where><AND><Eq><FieldRef Name='" + Fields.CorrListFldTitreIN + "'/>"
+ "<Value Type='Text'>" + myCTName + "</Value></Eq>"
+ "<Eq><FieldRef Name='" + Fields.CorrListFldFonctionIN + "'/>"
+ "<Value Type='Text'>" + Fields.GenerateChronoFnTitre + "</Value></Eq></AND></Where>";
SPListItemCollection allCorrListItems = corrList.GetItems(myQuery);
Label_Hello.Text += "Hi | " + allCorrListItems[1].Fields[1].ToString();
rLIC = allCorrListItems;
}
}
return rLIC;
}
}
getSelectedList(string ListTitle)
{
using (SPSite mySite = new SPSite(SPContext.Current.Web.Site.Url))
{
SPWebCollection myWebs = mySite.AllWebs;
SPList rList=null;
foreach (SPWeb myWeb in myWebs)
{
using (myWeb)
{
SPListCollection myLists = myWeb.Lists;
foreach (SPList myList in myLists)
{
if (myList.Title.Equals(ListTitle))
rList = myList;
}
}
myWeb.Dispose();
}
return rList;
}
}
