Freigeben über


AddDelegateType Klasse

Definition

Die AddDelegateType -Klasse stellt eine Anforderung zum Hinzufügen von Delegaten zu einem Postfach dar.

public ref class AddDelegateType : ExchangeWebServices::BaseDelegateType
public class AddDelegateType : ExchangeWebServices.BaseDelegateType
Public Class AddDelegateType
Inherits BaseDelegateType
Vererbung

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie user2-Stellvertretungsberechtigungen für Ordner erteilen, die sich im Besitz von user1 befinden. User2 erhält Berechtigungen auf Der Ebene "Autor" für den Ordner "Kalender" von Benutzer1 und Berechtigungen auf Reviewerebene für den Ordner "Kontakte" von User1. User2 empfängt Kopien von Besprechungsnachrichten und kann private Elemente im Postfach von User1 anzeigen. Besprechungsanfragen werden sowohl an user1 als auch an user2 gesendet.

static void AddDelegate()
{
    // Set the version, credentials, and the Client Access server on ExchangeServiceBinding.
    ExchangeServiceBinding esb = new ExchangeServiceBinding();
    esb.RequestServerVersionValue = new RequestServerVersion();
    esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1;
    esb.Credentials = new NetworkCredential("username", "password", "domain");
    esb.Url = "https://FQDN/ews/exchange.asmx";

    // Create the request.
    AddDelegateType request = new AddDelegateType();

    // Identify the mailbox to which a delegate user will be added.
    request.Mailbox = new EmailAddressType();
    request.Mailbox.EmailAddress = "user1@example.com";

    // Identify the delegate user and set delegate permissions.
    request.DelegateUsers = new DelegateUserType[] { new DelegateUserType() };
    request.DelegateUsers[0].UserId = new UserIdType();
    request.DelegateUsers[0].UserId.PrimarySmtpAddress = "user2@example.com";
    request.DelegateUsers[0].DelegatePermissions = new DelegatePermissionsType();
    request.DelegateUsers[0].DelegatePermissions.CalendarFolderPermissionLevel = DelegateFolderPermissionLevelType.Author;
    request.DelegateUsers[0].DelegatePermissions.CalendarFolderPermissionLevelSpecified = true;
    request.DelegateUsers[0].DelegatePermissions.ContactsFolderPermissionLevel = DelegateFolderPermissionLevelType.Reviewer;
    request.DelegateUsers[0].DelegatePermissions.ContactsFolderPermissionLevelSpecified = true;
    request.DelegateUsers[0].ReceiveCopiesOfMeetingMessages = true;
    request.DelegateUsers[0].ReceiveCopiesOfMeetingMessagesSpecified = true;
    request.DelegateUsers[0].ViewPrivateItems = true;
    request.DelegateUsers[0].ViewPrivateItemsSpecified = true;

    // Identify how meeting requests are handled.
    request.DeliverMeetingRequests = new DeliverMeetingRequestsType();
    request.DeliverMeetingRequests = DeliverMeetingRequestsType.DelegatesAndMe;
    request.DeliverMeetingRequestsSpecified = true;

    try
    {
        // Send the AddDelegate request and get the response.
        AddDelegateResponseMessageType response = esb.AddDelegate(request);
        DelegateUserResponseMessageType[] durmt = new DelegateUserResponseMessageType[] { };
        durmt = response.ResponseMessages;

        // Check each response message.
        foreach (DelegateUserResponseMessageType resp in durmt)
        {
            if (resp.ResponseClass == ResponseClassType.Success)
            {
                Console.WriteLine("Delegate user added: " + resp.DelegateUser.UserId.DisplayName);
            }
            else if (resp.ResponseClass == ResponseClassType.Error)
            {
                Console.WriteLine("Error: " + resp.MessageText);
            }
            else
                Console.WriteLine("Warning: " + resp.MessageText);
        }
        Console.ReadLine();
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
        Console.ReadLine();
    }
}

Konstruktoren

AddDelegateType()

Der AddDelegateType Konstruktor initialisiert eine neue Instanz der AddDelegateType -Klasse.

Eigenschaften

DelegateUsers

Die DelegateUsers -Eigenschaft ruft ein DelegateUserType Array ab, das die Identitäten von Delegaten darstellt, die einem Postfach hinzugefügt werden sollen, oder legt es fest.

DeliverMeetingRequests

Die DeliverMeetingRequests -Eigenschaft ruft ein DeliverMeetingRequestsType -Objekt ab, das darstellt, wie Besprechungsanfragen zwischen dem Delegaten und dem Prinzipal behandelt werden, oder legt es fest.

DeliverMeetingRequestsSpecified

Die DeliverMeetingRequestsSpecified -Eigenschaft ruft einen booleschen Wert ab, der angibt, ob die DeliverMeetingRequests Eigenschaft in die SOAP-Anforderung (Simple Object Access Protocol) serialisiert wird, oder legt diesen fest.

Mailbox

Die Mailbox -Eigenschaft ruft ein EmailAddressType Objekt ab, das ein E-Mail-aktiviertes Active Directory-Verzeichnisdienstobjekt darstellt, oder legt es fest.

(Geerbt von BaseDelegateType)

Gilt für: