Как получить только повторяющиеся мастера событий с помощью веб-служб Exchange?

Я использую представление CalendarItemType для извлечения элементов календаря. Единственные вещи, которые меня волнуют, - это те, которые я создал, и я знаю, что все они - еженедельно повторяющиеся. Я могу получить каждое отдельное вхождение и от любого из них повторяющийся мастер-элемент, но я хотел бы ограничить область поиска только теми элементами, которые соответствовали бы моему шаблону.

Я пытался используя свойство Restriction в FindItemType, чтобы указать ограничение NotEqualTo с нулевой константой для calenderRecurrenceId. Это вызвало мою просьбу об истечении времени ожидания. До сих пор мне не удалось загрузить рекурсии с помощью FindItemType, и мне нужно использовать последующий вызов GetItemType, когда я нахожу событие, которое происходит в повторяющейся серии.

Вот код, с которого я начинаю , Код должен работать как с Exchange 2007, так и с 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 );

Кроме того, если вы знаете какой-либо хороший источник примеров (помимо тех, что в MSDN), я бы приветствовал их. Я забираю чужой код в чрезвычайной ситуации и пытаюсь изучать Exchange Web Services на лету.

16
задан Alfred Myers 23 September 2010 в 16:33
поделиться