Compartir a través de


del método RoleDefinitionBindingCollection.Add

Agrega la definición de roles especificada a la colección de enlaces.

Espacio de nombres:  Microsoft.SharePoint.Client
Ensamblados:   Microsoft.SharePoint.Client.Silverlight (en Microsoft.SharePoint.Client.Silverlight.dll);  Microsoft.SharePoint.Client.Phone (en Microsoft.SharePoint.Client.Phone.dll)  Microsoft.SharePoint.Client (en Microsoft.SharePoint.Client.dll)

Sintaxis

'Declaración
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

Excepciones

Excepción Condición
SPException

No puede conceder a invitado de una función o definición de función se ha agregado. Código de error:-2146232832.

Comentarios

El elemento primario Web de la definición de la función que se agrega debe ser el mismo que el elemento primario Web de definiciones de función existente en la colección. No debe ser una referencia null (Nothing en Visual Basic).

Ejemplos

Este ejemplo de código crea un nuevo nivel de permisos y agrega un usuario a la lista anuncios con ese nivel de permisos.

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");
        }
    }
}

Vea también

Referencia

clase RoleDefinitionBindingCollection

Miembros RoleDefinitionBindingCollection

Espacio de nombres Microsoft.SharePoint.Client