RoleDefinitionBindingCollection.Add método
Adiciona a definição de funções especificada à coleção de ligação.
Namespace: Microsoft.SharePoint.Client
Assemblies: Microsoft.SharePoint.Client.Silverlight (em Microsoft.SharePoint.Client.Silverlight.dll); Microsoft.SharePoint.Client.Phone (em Microsoft.SharePoint.Client.Phone.dll) Microsoft.SharePoint.Client (em Microsoft.SharePoint.Client.dll)
Sintaxe
'Declaração
Public Sub Add ( _
roleDefinition As RoleDefinition _
)
'Uso
Dim instance As RoleDefinitionBindingCollection
Dim roleDefinition As RoleDefinition
instance.Add(roleDefinition)
public void Add(
RoleDefinition roleDefinition
)
Parâmetros
roleDefinition
Tipo: Microsoft.SharePoint.Client.RoleDefinitionUm objeto de RoleDefinition que representa a definição de função para adicionar.
Exceções
Exceção | Condição |
---|---|
SPException | Não é possível conceder um convidado da função ou definição de função já foi adicionada. Código de erro:-2146232832. |
Comentários
O pai Web da definição de função sendo adicionada deve ser o mesmo que o pai Web das definições de função existentes na coleção. Ele não deve ser uma referência nula (Nothing no Visual Basic).
Exemplos
Este exemplo de código cria um novo nível de permissão e adiciona um usuário à lista anúncios com nível de permissão.
using System;
using Microsoft.SharePoint.Client;
namespace Microsoft.SDK.SharePointFoundation.Samples
{
class RoleDefinitionBindingCollection_AddExample
{
static void Main()
{
string siteUrl = "http://MyServer/sites/MySiteCollection";
ClientContext clientContext = new ClientContext(siteUrl);
Site collSite = clientContext.Site;
Web site = clientContext.Web;
// Set up permissions.
BasePermissions permissions = new BasePermissions();
permissions.Set(PermissionKind.ViewListItems);
permissions.Set(PermissionKind.AddListItems);
permissions.Set(PermissionKind.EditListItems);
permissions.Set(PermissionKind.DeleteListItems);
// Create a new role definition.
RoleDefinitionCreationInformation rdcInfo = new RoleDefinitionCreationInformation();
rdcInfo.Name = "Manage List Items";
rdcInfo.Description = "Allows a user to manage list items";
rdcInfo.BasePermissions = permissions;
RoleDefinition roleDef = collSite.RootWeb.RoleDefinitions.Add(rdcInfo);
// Create a new RoleDefinitionBindingCollection object.
RoleDefinitionBindingCollection collRDB = new RoleDefinitionBindingCollection(clientContext);
// Add the role to the collection.
collRDB.Add(roleDef);
// Get the list to work with and break permissions so its permissions can be managed directly.
List targetList = site.Lists.GetByTitle("Announcements");
targetList.BreakRoleInheritance(true, false);
// Get the RoleAssignmentCollection for the target list.
RoleAssignmentCollection collRoleAssign = targetList.RoleAssignments;
// Add the user to the target list and assign the user to the new RoleDefinitionBindingCollection.
RoleAssignment rollAssign = collRoleAssign.Add(site.CurrentUser, collRDB);
clientContext.ExecuteQuery();
Console.WriteLine("Security modified");
}
}
}
Ver também
Referência
RoleDefinitionBindingCollection classe