This topic has not yet been rated - Rate this topic

CopyItemType class

The Exchange Web Services (EWS) autogenerated proxy object models that are created by .NET Framework proxy generators are deemphasized and we do not recommend that you use them for new .NET Framework client development. We recommend that you use the EWS Managed API to develop clients that target the .NET Framework. We recommend that you use the EWS Java API to develop clients that target the Java platform. For more information about the EWS Managed API, see Explore the EWS Managed API.

The CopyItemType class represents an operation to copy items in a mailbox.

Namespace:  ExchangeWebServices
Assembly:  EWS (in EWS.dll)
[SerializableAttribute]
public class CopyItemType : BaseMoveCopyItemType

The item identifier of the new item is returned in the response message (CopyItemResponseType). Item identifiers are not returned in responses for a cross-mailbox or mailbox to public folder CopyItem operation.

The following code example copies two items to the Inbox.

static void CopyItem(ExchangeServiceBinding esb)
{ 
    // Identify the items to copy.
    ItemIdType item1 = new ItemIdType();
    ItemIdType item2 = new ItemIdType();
    item1.Id = "AAAlAE1BQ1";
    item2.Id = "AAAlAE1BQ2";
    ItemIdType[] items = new ItemIdType[2] { item1, item2 };

    // Identify the destination folder.
    DistinguishedFolderIdType destFolder = new DistinguishedFolderIdType();
    destFolder.Id = DistinguishedFolderIdNameType.inbox;
    
    // Form the copy item request.
    CopyItemType request = new CopyItemType();
    request.ItemIds = items;
    request.ToFolderId = new TargetFolderIdType();
    request.ToFolderId.Item = destFolder;

    try
    {
        // Send the request and get the response.
        CopyItemResponseType response = esb.CopyItem(request);
        ArrayOfResponseMessagesType aormt = response.ResponseMessages;
        ResponseMessageType[] rmta = aormt.Items;

        foreach (ResponseMessageType rmt in rmta)
        {
            if (rmt.ResponseClass == ResponseClassType.Success)
            {
                Console.WriteLine("Successful item copy!");
            }
        }
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
}
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)

Community Additions

ADD
© 2013 Microsoft. All rights reserved.