CopyItemType Class
The CopyItemType class represents an operation to copy items in a mailbox.
Inheritance Hierarchy
System.Object
ExchangeWebServices.BaseRequestType
ExchangeWebServices.BaseMoveCopyItemType
ExchangeWebServices.CopyItemType
Namespace: ExchangeWebServices
Assembly: EWS (in EWS.dll)
Syntax
'Declaration
<SerializableAttribute> _
Public Class CopyItemType _
Inherits BaseMoveCopyItemType
'Usage
Dim instance As CopyItemType
[SerializableAttribute]
public class CopyItemType : BaseMoveCopyItemType
Remarks
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.
Examples
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);
}
}
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also