Seite 1 von 1

Mitglieder einer SharePointGroup mit C# abfragen

Verfasst: Do 13. Jul 2017, 20:29
von jue
Zunächst im SharePoint Server rechts neben dem Login-Namen auf das Zahnrad klicken und dann den Link Websiteeinstellungen anklicken:

websiteeinstellungen_aufrufen.PNG

Dann den Link Benutzer und Gruppen anklicken. Wenn man mit der Maus darüber fährt, wird schon der Link angezeigt, der später im Script angegeben werden muss, um den ClientContext anzugeben:
'http://[SERVER_URI]/_layouts/15/people.aspx'


sharepoint_group_URL.PNG

anzeigeGruppeHaustechnikImSharePoint.PNG



c#code_getMembersOfSharePointGroup.PNG

Code: Alles auswählen

        /// <summary>
        /// Liest Gruppenmitglieder aus einer SharePointGroup aus
        /// </summary>
        /// <param name="SPGroup"></param>
        /// <returns>DataTable t_members</returns>
        public DataTable getMembersOfSharePointGroup(string SPGroup)
        {
            ClientContext clientContext = new ClientContext("http://[SERVER_URI]/_layouts/15/people.aspx");
            Microsoft.SharePoint.Client.GroupCollection collGroup = clientContext.Web.SiteGroups;
            //Microsoft.SharePoint.Client.Group oGroup = collGroup.GetById(410);    // ggf. nach ID
            Microsoft.SharePoint.Client.Group oGroup = collGroup.GetByName(SPGroup);
            UserCollection collUser = oGroup.Users;
            clientContext.Load(collUser);
            clientContext.ExecuteQuery();

            DataTable t_members = new DataTable();
            t_members.Columns.Add("BenutzerName");
            t_members.Columns.Add("MailAdresse");
            t_members.Columns.Add("AccountName");
            DataRow dr;

            string BenutzerName = "", MailAdresse = "", AccountName = "";
            string[] array;

            foreach (User oUser in collUser)
            {
                BenutzerName = oUser.Title;
                MailAdresse = oUser.Email;
                array = oUser.LoginName.Split('\\');
                AccountName = array[1];
                dr = t_members.NewRow();
                dr[0] = BenutzerName;
                dr[1] = MailAdresse;
                dr[2] = AccountName;
                t_members.Rows.Add(dr);
            }
            return t_members;
        }