public bool AddPermissionsInFolder(string name, string group, SPRoleType role)
{
try
{
var list = Web.Lists.TryGetList(Name);
if (list == null)
{
return false;
}
var folderCollection = list.RootFolder.SubFolders[name];
if (!list.HasUniqueRoleAssignments)
{
list.BreakRoleInheritance(false);
}
if (!folderCollection.Item.HasUniqueRoleAssignments)
{
folderCollection.Item.BreakRoleInheritance(false);
}
var oGroup = Web.SiteGroups[group];
var roleAssignment = new SPRoleAssignment(oGroup);
var roleDefinition = Web.RoleDefinitions.GetByType(role);
roleAssignment.RoleDefinitionBindings.Add(roleDefinition);
folderCollection.Item.RoleAssignments.Add(roleAssignment);
folderCollection.Item.Update();
return true;
}
catch (Exception exception)
{
Logger.Error(string.Concat("Exceptin Folder", exception.Message));
return false;
}
}