我编写了一段代码,用于在SharePoint应用中创建自定义安全组。代码在站点级别的功能激活上运行,如下所示:
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPSite site = (SPSite)properties.Feature.Parent;
using (SPWeb web = site.OpenWeb())
{
if (!GroupExists(web.SiteGroups, "Test Column Administrators"))
{
web.SiteGroups.Add("Test Administrators", web.AssociatedOwnerGroup, null, "Contains users and groups who can administer Test Column articles.");
web.AssociatedGroups.Add(web.SiteGroups["Tets Column Administrators"]);
web.Update();
}
}
}
代码确实创建了该组并将其添加到SharePoint站点,但是当我转到“站点操作” - >“站点权限”(_layouts / user.aspx页面)时,该组将丢失。但是当我手动转到groups.aspx页面(_layouts / groups.aspx)时,它就在那里。
如何让我的代码以这样的方式创建该组,使其出现在user / aspx页面中?
提前致谢
答案 0 :(得分:1)
这完全没问题。 “组”页面显示站点中实际存在的组列表。 Users.aspx页面显示了主体在本网站中拥有的权限。您的代码没问题但是如果需要权限,您必须添加更多代码以授予您的组权限。当您的组在站点中具有权限时,它将显示在Users.aspx页面上。查看sample如何添加权限和项目,同样适用于网站级别和网站级别。