網站內容類型使用 - 刪除內容類型時出錯

如果你得到 “網站內容類型使用” 錯誤而刪除的內容類型.

更改默認的內容類型的列表/庫, 它使用的內容類型.

然後嘗試刪除該內容類型.

2 評論網站內容類型使用 - 錯誤,而刪除內容類型

  • KKelaiya

    如何找到在此內容類型的庫使用?

  • 請參考我的論壇討論 :
    http://www.mstechblogs.com/Forums/viewtopic.php?f=8&p=12&sid=cee7f065bed1fc88d9759c66b373d4dd#p12

    您可以使用對象模型來尋找 :

    使用系統;
    使用System.Collections.Generic;
    使用Microsoft.SharePoint程序;

    命名空間試驗
    {
    類 ConsoleApp
    {
    靜態無效的主要(串[] 參數)
    {
    使用 (=新的SPSite的SPSite siteCollection(“銈://本地主機”))
    {
    使用 (SPWeb網站 = siteCollection.OpenWeb())
    {
    // 獲取過時的內容類型.
    SPContentType過時 = webSite.ContentTypes[“測試”];

    如果 (過時的 !=空) // 我們有一個內容類型.
    {
    IList的 使用= SPContentTypeUsage.GetUsages(過時的);
    如果 (usages.Count> 0) // 這是在使用中.
    {
    Console.WriteLine(“內容類型在下列地點使用:”);
    的foreach (SPContentTypeUsage在實踐中使用)
    Console.WriteLine(usage.Url);
    }
    其他 // 內容類型是不使用.
    {
    // 刪除它.
    Console.WriteLine(“刪除的內容類型 {0}…”, obsolete.Name);
    webSite.ContentTypes.Delete(obsolete.Id);
    }
    }
    其他 // 沒有內容類型找到.
    {
    Console.WriteLine(“內容類型不存在於這個網站集。”);
    }
    }
    }
    Console.Write(“\n按ENTER繼續…”);
    Console.ReadLine();
    }
    }
    }

    其他選項都將使用SQL查詢 (要注意其有點冒險)

    SELECT *
    從 AllUserData
    哪裡 (tp_DirName LIKE ‘%’)
    及 ((tp_ContentType = ‘Document’) 和tp_ListId ='C8723B19 - 0DAB - 4F19 - B195 - 3399D5375752′)

    你會發現所引用的內容類型的項目. 引用刪除此項目使用下面的查詢.

    DELETE
    從 AllUserData
    哪裡 (tp_DirName LIKE ‘%’)
    及 ((tp_ContentType = ‘Document’) 和tp_ListId ='C8723B19 - 0DAB - 4F19 - B195 - 3399D5375752′)

給一個答复

你可以使用 這些 HTML標籤

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>