Compartilhar via


CreateItemType Classe

Definição

A CreateItemType classe representa uma solicitação para criar um item ou objeto de resposta.

public ref class CreateItemType : ExchangeWebServices::BaseRequestType
public class CreateItemType : ExchangeWebServices.BaseRequestType
Public Class CreateItemType
Inherits BaseRequestType
Herança
CreateItemType

Exemplos

O exemplo de código a seguir mostra uma solicitação CreateItem que cria um único email, envia-o a vários destinatários e salva uma cópia dele na pasta padrão Itens Enviados.

static void CreateEmail()
{
    // Create the CreateItem request.
    CreateItemType createEmailRequest = new CreateItemType();

    // Specifiy how the e-mail will be handled.
    createEmailRequest.MessageDisposition = MessageDispositionType.SendAndSaveCopy;
    createEmailRequest.MessageDispositionSpecified = true;

    // Specify the location of sent items.
    createEmailRequest.SavedItemFolderId = new TargetFolderIdType();
    DistinguishedFolderIdType sentitems = new DistinguishedFolderIdType();
    sentitems.Id = DistinguishedFolderIdNameType.sentitems;
    createEmailRequest.SavedItemFolderId.Item = sentitems;

    // Create the array of items.
    createEmailRequest.Items = new NonEmptyArrayOfAllItemsType();

    // Create a single e-mail message.
    MessageType message = new MessageType();
    message.Subject = "Daily Report";
    message.Body = new BodyType();
    message.Body.BodyType1 = BodyTypeType.Text;
    message.Body.Value = "(1) Handled customer issues, (2) Saved the world.";
    message.ItemClass = "IPM.Note";
    message.Sender = new SingleRecipientType();
    message.Sender.Item = new EmailAddressType();
    message.Sender.Item.EmailAddress = "user1@example.com";
    message.ToRecipients = new EmailAddressType[1];
    message.ToRecipients[0] = new EmailAddressType();
    message.ToRecipients[0].EmailAddress = "user2@example.com";
    message.Sensitivity = SensitivityChoicesType.Normal;
    message.SensitivitySpecified = true;
    message.Importance = ImportanceChoicesType.High;
    message.ImportanceSpecified = true;

    // Add the message to the array of items to be created.
    createEmailRequest.Items.Items = new ItemType[1];
    createEmailRequest.Items.Items[0] = message;

    try
    {
        // Create the service binding.
        // Identify the service and the user.
        ExchangeServiceBinding esb = new ExchangeServiceBinding();
        esb.Credentials = new NetworkCredential("username", "password", "domain");
        esb.Url = @"https://ExchangeServer.com/EWS/Exchange.asmx";

        // Send a CreateItem request and get the CreateItem response.
        CreateItemResponseType createItemResponse = esb.CreateItem(createEmailRequest);
        ArrayOfResponseMessagesType responseMessages = createItemResponse.ResponseMessages;

        // Access the response message.
        ResponseMessageType responseMessage = responseMessages.Items[0];
        // Determine whether the request was a success.
        if (responseMessages.Items[0].ResponseClass == ResponseClassType.Error)
        {
            throw new Exception(responseMessages.Items[0].MessageText);
        }
        if (responseMessage is ItemInfoResponseMessageType)
        {
            ItemInfoResponseMessageType createItemResp = (responseMessage as ItemInfoResponseMessageType);
            ArrayOfRealItemsType aorit = createItemResp.Items;

            // Determine whether there are items in response.
            if (aorit.Items != null)
            {
                foreach (ItemType item in aorit.Items)
                {
                    if (item is ItemType)
                    {
                        ItemType myItem = (item as ItemType);
                    }
                    if (item is MessageType)
                    {
                        MessageType myMessage = (item as MessageType);
                    }
                    // TODO: Add logic to check and cast for all other types.
                }
            }
        }
        else
        {
            Console.WriteLine("Item(s) created");
        }
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
}

Comentários

O CreateItemType é usado para criar objetos e itens de resposta no banco de dados do Exchange. A tabela a seguir descreve os itens e objetos de resposta que podem ser criados usando CreateItemType.

ItemType Representa um item genérico a ser criado no banco de dados do Exchange.
MessageType Representa uma mensagem de email a ser criada no banco de dados do Exchange.
TaskType Representa uma tarefa a ser criada no banco de dados do Exchange.
ContactItemType Representa um item de contato a ser criado no banco de dados do Exchange.
CalendarItemType Representa uma entrada de calendário a ser criada no banco de dados do Exchange.
AcceptItemType Representa um objeto de resposta para aceitar convites de reunião.
CancelCalendarItemType Representa um objeto de resposta para cancelar um item de calendário.
DeclineItemType Representa um objeto de resposta para convites de reunião em declínio.
ForwardItemType Representa um objeto de resposta para encaminhar um item para outros usuários.
RemoveItemType Representa um objeto de resposta para remover uma reunião cancelada de um calendário.
ReplyAllToItemType Representa um objeto de resposta para responder a todos os destinatários de um item.
ReplyToItemType Representa um objeto de resposta para responder ao remetente de um item.
TentativelyAcceptItemType Representa um objeto de resposta para aceitar provisoriamente um convite de reunião.
SuppressReadReceiptType Representa um objeto de resposta usado para suprimir recibos de leitura.

Observação: CreateItemType não pode ser usado para criar listas de distribuição, mensagens de reunião, mensagens de solicitação de reunião, mensagens de resposta de reunião e mensagens de cancelamento de reunião.

Construtores

CreateItemType()

O CreateItemType construtor inicializa uma nova instância da CreateItemType classe.

Propriedades

Items

A Items propriedade obtém ou define a coleção de itens a serem criados.

MessageDisposition

A MessageDisposition propriedade obtém ou define uma enumeração que descreve como um item é manipulado depois de ser criado. Essa propriedade é necessária para mensagens de email.

MessageDispositionSpecified

A MessageDispositionSpecified propriedade obtém ou define um valor booliano que especifica se a MessageDisposition propriedade é serializada na solicitação SOAP (Simple Object Access Protocol).

SavedItemFolderId

A SavedItemFolderId propriedade obtém ou define a pasta na qual novos itens são salvos.

SendMeetingInvitations

A SendMeetingInvitations propriedade obtém ou define uma enumeração que descreve como as solicitações de reunião são tratadas após a criação. Essa propriedade é necessária para itens de calendário.

SendMeetingInvitationsSpecified

A SendMeetingInvitationsSpecified propriedade obtém ou define um valor booliano que especifica se o SendMeetingInvitations é serializado na solicitação SOAP (Simple Object Access Protocol).

Aplica-se a