In Shared Documents I have a document "New”, here I am going to check whether the item is in hold or not using SharePoint object model.
- Open Visual Studio 2010.
- Create a new console application.
- Add the following references.
- Microssoft.Office.Policy.dll
- Microsoft.SharePoint.dll
- Add the following namespaces.
- using Microsoft.SharePoint;
- using Microsoft.Office.RecordsManagement.Holds;
- Replace the code with the following.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using System.Xml;
using Microsoft.SharePoint.Administration;
using Microsoft.Office.RecordsManagement.Holds;
namespace Holds
{
class Program
{
static void Main(string[] args)
{
using (SPSite site = new SPSite("http://servername:22222/sites/Test/"))
{
using (SPWeb web = site.RootWeb)
{
SPList list = web.Lists["Shared Documents"];
foreach (SPListItem item in list.Items)
{
if (item.DisplayName.ToString() == "New")
{
if (Hold.IsItemOnHold(item))
{
Console.WriteLine(item.DisplayName + " is on hold");
Console.ReadLine();
}
}
}
}
}
}
}
}

Join the conversation! Your thoughts help the community grow.