Enmarcha.SharePoint.Entities.Artefacts.ListSharePoint.AddPermissionsGroup C# (CSharp) Method

AddPermissionsGroup() public method

Add permissions fror Group in SharePoint
public AddPermissionsGroup ( string group, RoleType role ) : bool
group string
role RoleType
return bool
        public bool AddPermissionsGroup(string group, RoleType role)
        {
            try
            {             
                var listAdd = Web.Lists[Name];
                var oGroup = Web.Site.RootWeb.Groups.GetByName(group);
                var roleAssignment = new SPRoleAssignment(oGroup);
                var roleDefinition = Web.RoleDefinitions.GetByType((SPRoleType) role);
                roleAssignment.RoleDefinitionBindings.Add(roleDefinition);
                if (!listAdd.HasUniqueRoleAssignments)
                {
                    listAdd.BreakRoleInheritance(false);
                }
                listAdd.RoleAssignments.Add(roleAssignment);
                listAdd.Update(true);             
                return true;
            }
            catch (Exception exception)
            {
                Logger.Error(string.Concat("Error AddPermission :", exception.Message));
                return false;
            }
        }
        /// <summary>

Usage Example

Example #1
0
        /// <summary>
        /// Add permissions to the library
        /// </summary>        
        /// <param name="list"></param>
        /// <param name="group"></param>
        /// <param name="role"></param>
        /// <returns></returns>
        public static bool AddPermisionLibrary(this SPList list, string group, RoleType role)
        {
            try
            {

                var listSharePoint = new ListSharePoint(list.ParentWeb, Logger, list.Title);
                return listSharePoint.AddPermissionsGroup(group, role);
            }
            catch (Exception exception)
            {
                Logger.Error(string.Concat("Error AddPermisionLibrary:", exception.Message));
                return false;
            }
        }