我目前正在做一些測試,我嘗試以編程方式刪除網站集。從而我意識到SharePoint的一些奇怪行爲。Issus刪除網站集
我用下面的代碼來測試網站集刪除。
private static void DeleteSiteCollection(string urlSiteToDelete)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPWebApplication webApp = SPWebApplication.Lookup(new Uri("http://wssdev06"));
webApp.Sites.Delete(urlSiteToDelete);
webApp.Update();
});
}
因此,當我調用具有現有網站集的網址的方法時,該網站集將按預期方式被刪除。但是,當我使用null調用方法時,空字符串或未連接到網站集的url時,SharePoint會刪除駐留在根下的網站集(例如http://wssdev06/)。
我不確定我是否過於傾銷以使用此SPSiteCollection.Delete()方法,或者如果我不瞭解網站集和管理路徑的conecpt,但我認爲這是一個非常奇怪和令人擔憂的行爲。
我可以在不同的Web應用程序上重新編寫這個行爲,但沒有選擇在另一個SharePoint環境中測試。
所以我做錯了什麼或這是一個錯誤?
UPDATE:
所以我做了一些更多的調查,並意識到這一定有什麼做的SPSiteCollection類返回根網站集的索引,如果沒有網站集位於在給定的網址。看起來像一個錯誤。
是的,這將是我的工作,首先檢查SPSite對象。 – Flo 2009-05-20 15:18:43