API Reference

Class

IcsDocument

Namespace OfficeIMO.Email
Assembly OfficeIMO.Email
Modifiers sealed

A standalone iCalendar stream containing one or more VCALENDAR objects.

Inheritance

  • Object
  • IcsDocument

Usage

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Constructors

public IcsDocument(String productId = "-//OfficeIMO//OfficeIMO.Email//EN") #

Creates a document with one RFC 5545 VCALENDAR object.

Parameters

productId System.String = "-//OfficeIMO//OfficeIMO.Email//EN" optionalposition: 0

Methods

public ContentLineComponent AddCalendar() #
Returns: ContentLineComponent

Adds an empty VCALENDAR root.

public IEnumerable<ContentLineComponent> GetComponents(String name, Boolean recursive = true) #
Returns: IEnumerable<ContentLineComponent>

Enumerates matching components across every calendar.

Parameters

name System.String requiredposition: 0
recursive System.Boolean = true optionalposition: 1
Load 3 overloads
public static IcsDocument Load(Byte[] bytes, ContentLineReaderOptions options = null) #
Returns: IcsDocument

Loads an iCalendar stream from memory.

Parameters

bytes System.Byte[] requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
public static IcsDocument Load(String filePath, ContentLineReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IcsDocument

Loads an iCalendar file.

Parameters

filePath System.String requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public static IcsDocument Load(Stream stream, ContentLineReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: IcsDocument

Loads from a caller-owned stream without closing it.

Parameters

stream System.IO.Stream requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
LoadAsync 2 overloads
public static async Task<IcsDocument> LoadAsync(String filePath, ContentLineReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<IcsDocument>

Asynchronously loads an iCalendar file.

Parameters

filePath System.String requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public static async Task<IcsDocument> LoadAsync(Stream stream, ContentLineReaderOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task<IcsDocument>

Asynchronously loads from a caller-owned stream without closing it.

Parameters

stream System.IO.Stream requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public static IcsDocument Parse(String text, ContentLineReaderOptions options = null) #
Returns: IcsDocument

Parses an iCalendar stream from text.

Parameters

text System.String requiredposition: 0
options OfficeIMO.Email.ContentLineReaderOptions = null optionalposition: 1
Save 2 overloads
public Void Save(String filePath, ContentLineWriterOptions options = null) #
Returns: Void

Atomically saves this document to a file.

Parameters

filePath System.String requiredposition: 0
options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 1
public Void Save(Stream stream, ContentLineWriterOptions options = null) #
Returns: Void

Saves this document to a caller-owned stream without closing it.

Parameters

stream System.IO.Stream requiredposition: 0
options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 1
SaveAsync 2 overloads
public Task SaveAsync(String filePath, ContentLineWriterOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task

Asynchronously atomically saves this document to a file.

Parameters

filePath System.String requiredposition: 0
options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public Task SaveAsync(Stream stream, ContentLineWriterOptions options = null, CancellationToken cancellationToken = null) #
Returns: Task

Asynchronously saves to a caller-owned stream without closing it.

Parameters

stream System.IO.Stream requiredposition: 0
options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = null optionalposition: 2
public String Serialize(ContentLineWriterOptions options = null) #
Returns: String

Serializes this document to text using the configured output encoding.

Parameters

options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 0
public Byte[] ToBytes(ContentLineWriterOptions options = null) #
Returns: Byte[]

Serializes this document to bytes.

Parameters

options OfficeIMO.Email.ContentLineWriterOptions = null optionalposition: 0
public IReadOnlyList<ContentLineValidationIssue> Validate() #
Returns: IReadOnlyList<ContentLineValidationIssue>

Validates stable RFC 5545 structure without rejecting unknown or extension properties.

Properties

public IList<ContentLineComponent> Calendars { get; } #

Ordered VCALENDAR roots. Unknown properties and nested components are retained.