题
我们必须部署到每这些指令的MySite的Web应用程序自定义主页 - http://www.sharepointblog.com/ 2008/07 / sp2007-定制主页上-subsites.html
然而,我们要求停用的所有网站集的web应用的MySite内的功能的能力。该功能是建立一个网站集范围。我们将如何对具有潜在3000+ MySites应用停用呢?
解决方案
我将建立它遍历Web应用程序的所有网站集(MySites)并停用此功能的简单的控制台应用程序。你必须跑这片具有提升权限的代码(的 SPSecurity.RunWithElevatedPrivileges ),所以你必须停用网站集功能的权限。
private static void DeleteWebsiteCollections()
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPWebApplication webApp = SPWebApplication.Lookup(new Uri("http://MySiteHostWebApp"));
SPSiteCollection mySites = webApp.Sites;
foreach (SPSite site in mySites)
{
site.Features.Remove(new Guid("place your feature id here"));
if (null != site)
{
site.Dispose();
}
}
});
}
其他提示
此代码可以装订到主页面。 只有site.Features.Remove(新的GUID( “在这里把你的功能ID”));应保持。
不隶属于 StackOverflow