Operación UpdateFolder
La operación UpdateFolder se usa para modificar las propiedades de un elemento existente en el almacén de Exchange. Cada operación UpdateFolder consta de lo siguiente:
Elemento FolderId que especifica una carpeta que se va a actualizar.
Ruta de acceso interna de un elemento de la carpeta, según lo especificado por la forma de carpeta, que especifica los datos que se van a actualizar.
Carpeta que contiene el nuevo valor del campo actualizado, si la actualización no es una eliminación.
Comentarios
Se pueden realizar tres acciones de actualización básicas en un elemento. Estas acciones se enumeran en la tabla siguiente.
Action | Descripción |
---|---|
Anexar |
La acción anexar agrega datos a una propiedad existente. Conserva los datos que hay actualmente. Append no es aplicable a todas las propiedades. |
Set |
La acción set reemplaza los datos de una propiedad si contiene datos, o crea la propiedad y establece su valor si no existe. La acción set solo se aplica a las propiedades grabables. |
Delete |
La acción de eliminación quita una propiedad de una carpeta. Esto es diferente de establecerlo en un valor vacío. Una vez completada, la propiedad no existe para la carpeta. La eliminación solo se aplica a las propiedades grabables. |
Ejemplo de solicitud UpdateFolder
Descripción
En el ejemplo siguiente de una solicitud UpdateFolder se muestra cómo actualizar un nombre para mostrar de carpeta.
Código
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<soap:Body>
<UpdateFolder xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<FolderChanges>
<t:FolderChange>
<t:FolderId Id="AScA" ChangeKey="GO3u/"/>
<t:Updates>
<t:SetFolderField>
<t:FieldURI FieldURI="folder:DisplayName"/>
<t:Folder>
<t:DisplayName>NewFolderName</t:DisplayName>
</t:Folder>
</t:SetFolderField>
</t:Updates>
</t:FolderChange>
</FolderChanges>
</UpdateFolder>
</soap:Body>
</soap:Envelope>
Comentarios
En este ejemplo se cambia el nombre para mostrar de la carpeta a NewFolderName.
Nota:
Los valores de los atributos Id y ChangeKey del elemento FolderId se han acortado para mejorar la legibilidad.
Elementos Request
En la solicitud se usan los siguientes elementos:
Vea el esquema de elementos adicionales que puede usar para formar una solicitud UpdateFolder.
Nota:
La ubicación predeterminada del esquema está en el directorio virtual de EWS en el equipo que tiene instalado el rol de servidor acceso de cliente.
Ejemplo de respuesta UpdateFolder
Descripción
En el ejemplo siguiente se muestra una respuesta correcta a la solicitud UpdateFolder. En este ejemplo, se devuelve la nueva clave de cambio para reflejar el estado actualizado de la carpeta.
Código
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="685" MinorBuildNumber="8"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<UpdateFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:UpdateFolderResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:Folders>
<t:Folder>
<t:FolderId Id="AAAlAFVz" ChangeKey="AQAAAB" />
</t:Folder>
</m:Folders>
</m:UpdateFolderResponseMessage>
</m:ResponseMessages>
</UpdateFolderResponse>
</soap:Body>
</soap:Envelope>
Comentarios
Nota:
El identificador de carpeta y la clave de cambio se han acortado para conservar la legibilidad.
El identificador de carpeta que se devuelve en la respuesta representa la carpeta actualizada.
Elementos de respuesta correctos
Los siguientes elementos se usan en la respuesta:
Ejemplo de respuesta de error de UpdateFolder
Descripción
En el ejemplo siguiente se muestra una respuesta de error a una solicitud UpdateFolder.
Código
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="685" MinorBuildNumber="8"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<UpdateFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:UpdateFolderResponseMessage ResponseClass="Error">
<m:MessageText>The change key is invalid.</m:MessageText>
<m:ResponseCode>ErrorInvalidChangeKey</m:ResponseCode>
<m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
<m:Folders />
</m:UpdateFolderResponseMessage>
</m:ResponseMessages>
</UpdateFolderResponse>
</soap:Body>
</soap:Envelope>
Comentarios
En este ejemplo se muestra una respuesta de error causada por un atributo ChangeKey no válido en la solicitud.
Elementos de respuesta de error
Los siguientes elementos se usan en la respuesta de error: