Kung kukuha ka “Uri ng Nilalaman ng Site sa Paggamit” error habang tinatanggal ang uri ng nilalaman.
Baguhin ang default na uri ng nilalaman para sa listahan ng / library, kung saan ay gumagamit ng uri ng nilalaman na ito.
Pagkatapos ay subukang tanggalin ang uri ng nilalaman.
How to find in which libraries this content type is used?
Refer to the discussion in my forum :
http://www.mstechblogs.com/Forums/viewtopic.php?f=8&p=12&sid=cee7f065bed1fc88d9759c66b373d4dd#p12
You can use Object Model to find :
paggamit ng System;
gamit System.Collections.Generic;
gamit Microsoft.SharePoint;
namespace Test
{
class ConsoleApp
{
static void Main(pisi[] args)
{
paggamit (SPSite siteCollection = new SPSite(“http://localhost”))
{
paggamit (SPWeb webSite = siteCollection.OpenWeb())
{
// Get the obsolete content type.
SPContentType obsolete = webSite.ContentTypes[“Test”];
kung (obsolete != Null) // We have a content type. usages = SPContentTypeUsage.GetUsages(obsolete);
{
IList
kung (usages.Count > 0) // It is in use.
{
Console.WriteLine(“The content type is in use in the following locations:”);
foreach (SPContentTypeUsage usage in usages)
Console.WriteLine(usage.Url);
}
pa // The content type is not in use.
{
// Delete it.
Console.WriteLine(“Deleting content type {0}…”, obsolete.Name);
webSite.ContentTypes.Delete(obsolete.Id);
}
}
pa // No content type found.
{
Console.WriteLine(“The content type does not exist in this site collection.”);
}
}
}
Console.Write(“\nPress ENTER to continue…”);
Console.ReadLine();
}
}
}
Other Option would be using SQL query (beware its bit risky)
SELECT *
FROM AllUserData
WHERE (tp_DirName LIKE ‘%’)
AT ((tp_ContentType = ‘Document’) and tp_ListId=’C8723B19-0DAB-4F19-B195-3399D5375752′)
You will find items referenced by content type. Delete this referenced items using query below.
DELETE
FROM AllUserData
WHERE (tp_DirName LIKE ‘%’)
AT ((tp_ContentType = ‘Document’) and tp_ListId=’C8723B19-0DAB-4F19-B195-3399D5375752′)