У меня есть два подсайта на моем сайте sharepoint, SampleSite1 и SampleSite2 под Parentsite, называемый MainSite.Как добавить пользователей в группы под сайтом сайта в sharepoint sitecollection?
http://xyz.sharepoint.com/sites/MainSite/ - SiteUrl
http://xyz.sharepoint.com/sites/MainSite/SampleSite1 - Subsite1's Url
http://xyz.sharepoint.com/sites/MainSite/SampleSite2 - Subsite2's Url
Каждый из Сайтов имеет две группы superUser и NormalUser соответственно.
Учетные данные используют SiteUrl MainSite.
SecureString password = new SecureString();
string pwd = "Pass123";
string UserName = "[email protected]";
password = convertToSecureString(pwd);
ClientContext clientContext = new ClientContext("http://xyz.sharepoint.com/sites/MainSite/");
clientContext.Credentials = new SharePointOnlineCredentials(UserName, password);
Incase добавления пользователя к группам Subsite как NormalUser, можем ли мы использовать тот же контекст Sharepoint с выше SiteURL для доступа и выполнения операций (добавление/удаление пользователя) в группах, присутствующих под подсайтами?
Если да, то как мы можем это сделать? У меня уже есть встроенный код для добавления или удаления пользователя из группы сайтов sharepoint на основе некоторых требований.
public void AddUserToDMSite(string useremail, string securityGroupName)
{
GroupCollection collGroup = SPContext.Web.SiteGroups;
Group oGroup1 = collGroup.GetByName("UserList");
Group oGroup2 = collGroup.GetByName(securityGroupName);
UserCollection oUserCollection1 = oGroup1.Users;
UserCollection oUserCollection2 = oGroup2.Users;
SPContext.Load(oUserCollection1);
SPContext.Load(oUserCollection2);
SPContext.ExecuteQuery();
var uname = oGroup1.Users.GetByEmail(useremail);
var userCheck = oUserCollection2.Where(u => u.Email == useremail).FirstOrDefault();
if (userCheck == null)
{
Microsoft.SharePoint.Client.User oUser2 = oGroup2.Users.AddUser(uname);
}
SPContext.ExecuteQuery();
}
Спасибо за ваш ответ Марко. Я получаю сообщение об ошибке, когда вы передаете параметры методу. \t Ссылка на объект требуется для нестатического поля, метода или свойства 'SharepointTestApp.Program.AddUserToDMSite (строка, строка, Microsoft.SharePoint.Client.Web)' –
is возможно ли отправлять объекты в качестве параметра? –
Привет, Конечно, можно передать объекты в качестве параметра. Попробуйте установить метод AddUserToDMSite как статический и дайте мне знать результат. public static void AddUserToDMSite (... –