gpt4 book ai didi

sharepoint - 删除网站集的问题

转载 作者:行者123 更新时间:2023-12-04 07:07:34 24 4
gpt4 key购买 nike

我目前正在做一些测试,我尝试以编程方式删除网站集。因此,我意识到 SharePoint 的一些奇怪行为。

我使用以下代码来测试网站集删除。

private static void DeleteSiteCollection(string urlSiteToDelete)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPWebApplication webApp = SPWebApplication.Lookup(new Uri("http://wssdev06"));
webApp.Sites.Delete(urlSiteToDelete);
webApp.Update();
});
}

因此,当我使用现有网站集的 url 调用该方法时,网站集将按预期删除。但是,当我使用 null、空字符串或未连接到网站集的 url 调用该方法时,SharePoint 会删除位于根目录下的网站集(例如 http://wssdev06/ )。

我不确定我是不是太笨而不能使用这个 SPSiteCollection.Delete() 方法,或者我是否不了解网站集和管理路径的连接,但我认为这是一个非常奇怪和令人担忧的行为。

我可以在不同的 Web 应用程序上重现这种行为,但还没有选择在另一个 SharePoint 环境中进行测试。

所以我做错了什么还是这是一个错误?

更新:

因此,我进行了更多调查,并意识到这一定与 SPSiteCollection 类的索引器有关,如果给定 url 下没有站点集合,则该类返回根站点集合。看起来像一个错误。

最佳答案

每当您要求 SharePoint 使用 Url 查找网站集时,最好返回 SPSite,即使这意味着它必须忽略部分 Url。

有时这是一件非常好的事情。 f.i.如果您有一个列表的完整 url 并想找到相应的 SPSite 和 SPWeb。

但这可能非常危险,例如当您删除网站集并且可能出现拼写错误时。
如果您想确保获得正确的网站集,请首先查找 SPSite 并检查您获得的 SPSite 是否具有您想要的 URL。

BR

关于sharepoint - 删除网站集的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/888234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com