This is a maintenance update with a number of bugfixes and a few new features to ease access to child items and folders: The Folder classes now expose two properties, ChildItems and ChildFolders, which provide access to the child elements of the folder. Both, the ItemCollection and the FolderCollection, have a Refresh operation, which must be called before the child elements can be accessed. Furthermore, both classes have a Constraints property, which restricts the items enumerated by the Refresh operation. Here is a class diagram of the new classes:
Class diagram of the ItemCollection and FolderCollection classes (click to enlarge)
I will post an example tomorrow on how to use these new methods to enumerate the attachments of all items in the inbox folder of a users mailbox.
Changelog for this version
- Many minor changes to comply with static code-analysis
- Fixed an bug with the Mailbox class
- Fixed several bugs in the Initialize() method of the typed item classes
- New class FolderCollection, which provides access to subfolders of an item.
- New class ItemCollection<ItemType>, which provide access to child elements of a folder
- The Folder<ItemType> now have a property ChildItems
- The Folder classes now has a property ChildFolders;
- The Folder class now has a property ChildItems.
- The Attachment.Name property is now more accurate
- All Item and Folder classes now expose a method ResetSecurityDescriptor and ResetSecurityDescriptorAsync, which does exactly that.
- The Contact, CalendarItem now sets the content class correctly on new items
- The Find Method on the Searcher and Searcher<ItemType> has been renamed to FindAll
- The FindAsync Method on the Searcher and Searcher<ItemType> has been renamed to FindAllAsync
- New method FindPage on the Searcher and Searcher<ItemType>
- New method FindPageAsync on the Searcher and Searcher<ItemType>
- The constructor of FolderSecurity is now internal
- Constructor in ContactEmailAddress now saves the displayname correctly
- Upgraded the threading library to version 2.5.2. This fixes a bug with all the synchronous methods blocking in a deadlock.
Downloads
| InfiniTec.Exchange.zip (1,858,836 Bytes) Binaries, Source, Documentation and Example application of version 0.99.2 |