API Reference
OfflineAddressBookSession
Read-only, lazy session over one OAB v4 Full Details file or a directory containing multiple address lists. Sessions are not thread-safe.
Inheritance
- Object
- OfflineAddressBookSession
Usage
This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.
Returned or exposed by
- Method OfflineAddressBookSession.Open
- Method OfflineAddressBookSession.Open
- Property EmailDataOpenResult.AddressBook
Methods
public OfflineAddressBookIdentityIndex BuildIdentityIndex(OfflineAddressBookIdentityIndexOptions options = null, CancellationToken cancellationToken = null) #OfflineAddressBookIdentityIndexBuilds an immutable, bounded index for offline SMTP, proxy, EX/X.500, target, account, and optional display-name identity resolution.
Parameters
- options OfficeIMO.Email.AddressBook.OfflineAddressBookIdentityIndexOptions = null
- cancellationToken System.Threading.CancellationToken = null
public virtual Void Dispose() #VoidRestores caller-owned stream positions. Source files are opened only during individual operations.
public IEnumerable<OfflineAddressBookEntry> EnumerateEntries(OfflineAddressBookEnumerationOptions options = null, CancellationToken cancellationToken = null) #IEnumerable<OfflineAddressBookEntry>Lazily decodes entries, keeping memory related to the active record rather than total OAB size.
Parameters
- options OfficeIMO.Email.AddressBook.OfflineAddressBookEnumerationOptions = null
- cancellationToken System.Threading.CancellationToken = null
public IEnumerable<OfflineAddressBookEntryReference> EnumerateEntryReferences(OfflineAddressBookEnumerationOptions options = null, CancellationToken cancellationToken = null) #IEnumerable<OfflineAddressBookEntryReference>Lazily enumerates record references without decoding property values.
Parameters
- options OfficeIMO.Email.AddressBook.OfflineAddressBookEnumerationOptions = null
- cancellationToken System.Threading.CancellationToken = null
public static OfflineAddressBookSession Open(String path, OfflineAddressBookReaderOptions options = null, CancellationToken cancellationToken = null) #OfflineAddressBookSessionOpens one Full Details file or discovers every Full Details component below a directory.
Parameters
- path System.String
- options OfficeIMO.Email.AddressBook.OfflineAddressBookReaderOptions = null
- cancellationToken System.Threading.CancellationToken = null
public static OfflineAddressBookSession Open(Stream stream, String sourceName, OfflineAddressBookReaderOptions options = null, CancellationToken cancellationToken = null) #OfflineAddressBookSessionOpens an uncompressed OAB v4 Full Details stream without taking ownership. The stream must be seekable. Its original position is restored after each operation and when the session is disposed.
Parameters
- stream System.IO.Stream
- sourceName System.String
- options OfficeIMO.Email.AddressBook.OfflineAddressBookReaderOptions = null
- cancellationToken System.Threading.CancellationToken = null
public OfflineAddressBookEntry ReadEntry(OfflineAddressBookEntryReference reference, CancellationToken cancellationToken = null) #OfflineAddressBookEntryRandom-access reads one previously enumerated record reference.
Parameters
- reference OfficeIMO.Email.AddressBook.OfflineAddressBookEntryReference
- cancellationToken System.Threading.CancellationToken = null
public OfflineAddressBookSearchReport Search(OfflineAddressBookSearchQuery query, IProgress<OfflineAddressBookSearchProgress> progress = null, CancellationToken cancellationToken = null) #OfflineAddressBookSearchReportSearches semantic address-entry fields with explicit record, character, result, progress, cancellation, and exact-position resume bounds.
Parameters
- query OfficeIMO.Email.AddressBook.OfflineAddressBookSearchQuery
- progress System.IProgress{OfficeIMO.Email.AddressBook.OfflineAddressBookSearchProgress} = null
- cancellationToken System.Threading.CancellationToken = null
public OfflineAddressBookValidationReport Validate(OfflineAddressBookValidationOptions options = null, IProgress<OfflineAddressBookValidationProgress> progress = null, CancellationToken cancellationToken = null) #OfflineAddressBookValidationReportRuns an explicit checksum, record-framing, or full-decode integrity pass.
Parameters
- options OfficeIMO.Email.AddressBook.OfflineAddressBookValidationOptions = null
- progress System.IProgress{OfficeIMO.Email.AddressBook.OfflineAddressBookValidationProgress} = null
- cancellationToken System.Threading.CancellationToken = null
Inherited Methods
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object
Properties
public String SourcePath { get; } #Path or stream name used to open the session.
public IReadOnlyList<OfflineAddressBookFileInfo> Files { get; } #All discovered OAB components, including supporting legacy indexes and templates.
public IReadOnlyList<OfflineAddressBookListInfo> AddressLists { get; } #Modern OAB v4 Full Details address lists available for entry enumeration.
public Int64 DeclaredEntryCount { get; } #Total declared records across all address lists.
public IReadOnlyList<EmailDiagnostic> Diagnostics { get; } #Open, discovery, and recoverable entry diagnostics.