Compartir a través de


CreateItemType Clase

Definición

La CreateItemType clase representa una solicitud para crear un objeto de elemento o respuesta.

public ref class CreateItemType : ExchangeWebServices::BaseRequestType
public class CreateItemType : ExchangeWebServices.BaseRequestType
Public Class CreateItemType
Inherits BaseRequestType
Herencia
CreateItemType

Ejemplos

En el ejemplo de código siguiente se muestra una solicitud CreateItem que crea un único correo electrónico, la envía a varios destinatarios y guarda una copia de ella en la carpeta predeterminada Elementos 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);
    }
}

Comentarios

CreateItemType se usa para crear objetos y elementos de respuesta en la base de datos de Exchange. En la tabla siguiente se describen los elementos y objetos de respuesta que se pueden crear mediante CreateItemType.

ItemType Representa un elemento genérico que se va a crear en la base de datos de Exchange.
MessageType Representa un mensaje de correo electrónico que se va a crear en la base de datos de Exchange.
TaskType Representa una tarea que se va a crear en la base de datos de Exchange.
ContactItemType Representa un elemento de contacto que se va a crear en la base de datos de Exchange.
CalendarItemType Representa una entrada de calendario que se va a crear en la base de datos de Exchange.
AcceptItemType Representa un objeto de respuesta para aceptar invitaciones a reuniones.
CancelCalendarItemType Representa un objeto de respuesta para cancelar un elemento de calendario.
DeclineItemType Representa un objeto de respuesta para rechazar las invitaciones a reuniones.
ForwardItemType Representa un objeto de respuesta para reenviar un elemento a otros usuarios.
RemoveItemType Representa un objeto de respuesta para quitar una reunión cancelada de un calendario.
ReplyAllToItemType Representa un objeto de respuesta para responder a todos los destinatarios de un elemento.
ReplyToItemType Representa un objeto de respuesta para responder al remitente de un elemento.
TentativelyAcceptItemType Representa un objeto de respuesta para aceptar provisionalmente una invitación a la reunión.
SuppressReadReceiptType Representa un objeto de respuesta que se usa para suprimir las confirmaciones de lectura.

Nota: CreateItemType no se puede usar para crear listas de distribución, mensajes de reunión, mensajes de convocatoria de reunión, mensajes de respuesta de reunión y mensajes de cancelación de reuniones.

Constructores

CreateItemType()

El CreateItemType constructor inicializa una nueva instancia de la CreateItemType clase .

Propiedades

Items

La Items propiedad obtiene o establece la colección de elementos que se va a crear.

MessageDisposition

La MessageDisposition propiedad obtiene o establece una enumeración que describe cómo se controla un elemento después de crearlo. Esta propiedad es necesaria para los mensajes de correo electrónico.

MessageDispositionSpecified

La MessageDispositionSpecified propiedad obtiene o establece un valor booleano que especifica si la MessageDisposition propiedad se serializa en la solicitud del Protocolo simple de acceso a objetos (SOAP).

SavedItemFolderId

La SavedItemFolderId propiedad obtiene o establece la carpeta en la que se guardan los nuevos elementos.

SendMeetingInvitations

La SendMeetingInvitations propiedad obtiene o establece una enumeración que describe cómo se controlan las solicitudes de reunión después de crearse. Esta propiedad es necesaria para los elementos de calendario.

SendMeetingInvitationsSpecified

La SendMeetingInvitationsSpecified propiedad obtiene o establece un valor booleano que especifica si SendMeetingInvitations se serializa en la solicitud del Protocolo simple de acceso a objetos (SOAP).

Se aplica a