Использование SPWeb.CreateDefaultAssociatedGroups

Привет всем.

В SharePoint существует множество способов создания группы пользователей. Один из которых использование метода CreateDefaultAssociatedGroups (https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.createdefaultassociatedgroups.aspx).

Давайте рассмотрим пример. Создадим веб часть, в которой будет одна кнопка при нажатии на которой будет создаваться группа на нашем узле с разрешениями Read, а также добавим учётную запись в эту группу.

Итак, приступим:

1. Создадим проект и добавим веб часть шаблон.

2. Добавим кнопку и повесим обработчик события на нажатие этой кнопки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

3. Далее вставить код в обработчик события:

using System;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using Microsoft.SharePoint;

namespace SharePointProjectCreateSiteGroup.VisualWebPartCreateGroup

{

public partial class VisualWebPartCreateGroupUserControl : UserControl

{

protected void Page_Load(object sender, EventArgs e)

{

this.CreateGroup.Click += new EventHandler(CreateGroup_Click);

}

void CreateGroup_Click(object sender, EventArgs e)

{

SPSecurity.RunWithElevatedPrivileges(delegate()

{

using (SPSite site = new SPSite("https://intranet.contoso.com"))

{

using (SPWeb web = site.OpenWeb())

{

web.AllowUnsafeUpdates = true;

web.AssociatedVisitorGroup = null;

web.Update();

string user = SPContext.Current.Web.CurrentUser.LoginName.ToString();

web.CreateDefaultAssociatedGroups(user, user, "New_Users");

web.Update();

web.AssociatedVisitorGroup.AddUser("NT Authority\\Authenticated users", "", "New Authenticated users", "");

web.Update();

}

}

});

}

}

}