I have a ListItem that I am deleting. I would also like to delete the folder (SPFolder) that it sits in if there are no longer ListItems inside it. So I need the number of ListItems in a folder if I only have the ListItem I'm about to delete.
Requirement:
Delete a folder (SPFolder) if the ListItem you are about to delete is the last item in the folder.
Code Snippet:
SPSite site = new SPSite("http://MyServer:123/sites/MyCollection");
SPWeb web = site.AllWebs["MyWeb"];
SPList list = web.Lists["My List"];
SPListItem item = list.Items[0]; // Deleting first ListItem
try
{
// Get an the SPFolder object from the Item's Url
SPFolder folder = web.GetFolder(list.ParentWeb.Url + list.Items[0].Url.Substring(0,
list.Items[0].Url.LastIndexOf("/")));
// Use SPQuery.
SPQuery qry = new SPQuery();
qry.Folder = folder;
web = folder.ParentWeb;
SPListItemCollection items = web.Lists[folder.ParentListId].GetItems(qry);
int itemCount = items .Count;
}
finally
{
// Dispose.
web.Dispose();
site.Dispaose();
}
Useful Links:
Traversing SharePoint List Folder Hierarchies
Tuesday, March 25, 2008
Subscribe to:
Post Comments (Atom)

0 comments:
Post a Comment