Estoy usando una vista CalendarItemType para recuperar elementos del calendario. Los únicos elementos que me importan son los que he creado y sé que son todos elementos recurrentes semanales. Puedo obtener cada ocurrencia individual y, a partir de cualquiera de ellos, el elemento maestro recurrente, pero me gustaría reducir el alcance de mi búsqueda a aquellos elementos que coincidan con mi patrón.¿Cómo recupero solo los maestros de eventos recurrentes usando los servicios web de Exchange?
He intentado utilizar la propiedad Restriction en FindItemType para especificar una restricción NotEqualTo con una constante nula para calendarRecurrenceId. Esto causó que mi solicitud expirara. Hasta ahora no he podido cargar las recurrencias con FindItemType en absoluto y necesito utilizar una llamada GetItemType posterior cuando encuentro un evento que es una ocurrencia en una serie recurrente.
Aquí está el código con el que estoy empezando. El código tiene que trabajar tanto con Exchange 2007 y Exchange 2010.
var findItemRequest = new FindItemType();
findItemRequest.ParentFolderIds = new DistinguishedFolderIdType[]
{
new DistinguishedFolderIdType()
};
((DistinguishedFolderIdType)findItemequest.ParentFolderIds[0]).Id = DistinguishedFolderIdNameType.calendar;
findItemRequest.Traversal = ItemQueryTraversalType.Shallow;
var itemShapeDefinition = new ItemResponseShapeType(
{
BaseShape = DefaultShapeNamesType.AllProperties;
}
findItemRequest.Item = calenderView;
findItemRequest.ItemShape = itemShapeDefinition;
var findItemResponse = this.esb.FindItem(findItemRequest);
Además, si usted sabe de alguna buena fuente de ejemplos (más allá de los de MSDN), daría la bienvenida a ellos. Estoy recogiendo el código de otra persona en una emergencia y tratando de aprender Exchange Web Services sobre la marcha.
Cuando estaba aprendiendo EWS, utilicé el código de EWSEditor como referencia. – Avilo