雖然在SharePoint創建集團,我們有一個選項 「成員發送請求到以下E-mail地址」它被用來發送成員請求SPGroup會員要求的e-mail地址SPGroup的SharePoint
。
但如何才能設定E-mail地址編程
雖然在SharePoint創建集團,我們有一個選項 「成員發送請求到以下E-mail地址」它被用來發送成員請求SPGroup會員要求的e-mail地址SPGroup的SharePoint
。
但如何才能設定E-mail地址編程
我試圖完成的功能被激活時同樣的事情。我已經找到了如何創建組以及如何在對象模型中訪問這些設置。你可以使用我的例子下面。問題是,儘管調用了SPGroup.Update(),但我對SPGroup的這些布爾屬性所做的更改並未執行。 SPGroup創建的仍然使用默認設置(關閉會員請求)。
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPSite site = (SPSite)properties.Feature.Parent;
{
using (SPWeb web = site.RootWeb)
{
SPGroupCollection collGroups = web.SiteGroups;
SPUser user = web.EnsureUser("DOMAIN\\username");
collGroups.Add("MySPGroupName", user, user, "MySPGroupDescription");
if (!web.AssociatedGroups.Contains(collGroups["MySPGroupName"]))
{
web.AssociatedGroups.Add(collGroups["MySPGroupName"]);
}
SPRoleAssignment assignment = new SPRoleAssignment(collGroups["MySPGroupName"]);
SPRoleDefinition def = web.RoleDefinitions.GetByType(SPRoleType.Contributor);
assignment.RoleDefinitionBindings.Add(def);
web.RoleAssignments.Add(assignment);
web.Update();
collGroups["MySPGroupName"].AllowMembersEditMembership = true;
collGroups["MySPGroupName"].AllowRequestToJoinLeave = true;
collGroups["MySPGroupName"].OnlyAllowMembersViewMembership = false;
string emailForRequests = "[email protected]";
if (!String.IsNullOrEmpty(user.Email))
emailForRequests = user.Email;
collGroups["MySPGroupName"].RequestToJoinLeaveEmailSetting = emailForRequests;
collGroups["MySPGroupName"].Update();
}
}
}
如果使用SP 2013,使用PowerShell中您可以使用下面的代碼:
$membersGroup = $siteCollection.SiteGroups["$groupName"]
$membersGroup.RequestToJoinLeaveEmailSetting = "[email protected]"
$membersGroup.Update()