Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/
Class

AccessDocument

OfficeIMO.Access

Namespace
OfficeIMO.Access
Assembly
OfficeIMO.Access
Source revision
0eef6a5756b9 with working tree changes
Implements
IDisposable
Modifiers
sealed

A typed Access model with explicit operation qualification. Instances are not thread-safe.

Inheritance

  • object
  • AccessDocument

Usage

Explore 4 API references to this type

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

Returned or exposed by 3

Accepted by parameters 1

Methods

AssessSave 2 overloads
public AccessOperationReport AssessSave(AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Assesses a native save without writing output or accepting unsupported codecs.

Parameters

options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public AccessOperationReport AssessSave(string path, AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Assesses native output for a path, including explicit format/extension agreement.

Parameters

path string required
options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public AccessUpdateScope BeginUpdate() #

Begins a model edit scope. Disposal rolls back unless Commit succeeds; database transactions are separate.

Create 3 overloads
public static AccessDocument Create(AccessCreateOptions? options = null) #

Creates an in-memory model without writing a file.

Parameters

options OfficeIMO.Access.AccessCreateOptions? = null optional
public static AccessDocument Create(string path, AccessCreateOptions? options = null) #

Creates a model associated with a validated path; no directory or file is created.

Parameters

path string required
options OfficeIMO.Access.AccessCreateOptions? = null optional
public static AccessDocument Create(Stream stream, AccessCreateOptions? options = null) #

Creates a model associated with a writable, seekable caller-owned stream. No bytes are written.

Parameters

stream System.IO.Stream required
options OfficeIMO.Access.AccessCreateOptions? = null optional
public void Dispose() #

Discards pending model edits and releases the document. Caller-owned streams remain open.

public OfficeVbaProject GetVbaProject(OfficeVbaReadOptions? options = null, CancellationToken cancellationToken = default) #

Loads a detached editable VBA project from the decoded native application storage.

Parameters

options OfficeIMO.OfficeVbaReadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional

Returns

OfficeVbaProject
Inspect 2 overloads
public static AccessInspection Inspect(string path, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Inspects a bounded native file without opening Access or executing active content.

Parameters

path string required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public static AccessInspection Inspect(Stream stream, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Inspects caller-owned input. Seekable input starts at zero and its position is restored.

Parameters

stream System.IO.Stream required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
Load 2 overloads
public static AccessDocument Load(string path, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Loads a bounded native catalog and selected schemas. User rows and large field values are decoded on demand.

Parameters

path string required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public static AccessDocument Load(Stream stream, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Loads caller-owned input into a bounded immutable snapshot without retaining or closing the stream.

Parameters

stream System.IO.Stream required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
LoadAsync 2 overloads
public static async Task<AccessDocument> LoadAsync(string path, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Asynchronously snapshots a bounded file and inspects its native header.

Parameters

path string required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional

Returns

Task<AccessDocument>
public static async Task<AccessDocument> LoadAsync(Stream stream, AccessLoadOptions? options = null, CancellationToken cancellationToken = default) #

Asynchronously snapshots caller-owned input, retaining its seekable position and leaving it open.

Parameters

stream System.IO.Stream required
options OfficeIMO.Access.AccessLoadOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional

Returns

Task<AccessDocument>
Save 3 overloads
public void Save(AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Requests associated persistence. An unsupported writer fails before touching any destination.

Parameters

options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public void Save(string path, AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Requests native file output. Unsupported codecs fail before creating directories, files or temporary output.

Parameters

path string required
options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public void Save(Stream stream, AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Requests native stream output. The caller's position, length and ownership remain unchanged on unsupported output.

Parameters

stream System.IO.Stream required
options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public Task SaveAsync(string path, AccessSaveOptions? options = null, CancellationToken cancellationToken = default) #

Saves qualified native output and returns a completed, failed or cancelled task. Encoding is synchronous.

Parameters

path string required
options OfficeIMO.Access.AccessSaveOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional

Returns

Task
public void SetVbaProject(OfficeVbaProject project, OfficeVbaWriteOptions? options = null, CancellationToken cancellationToken = default) #

Stages a shared VBA project in a qualified native MDB/ACCDB snapshot. Call Save to persist it.

Parameters

project OfficeIMO.OfficeVbaProject required
options OfficeIMO.OfficeVbaWriteOptions? = null optional
cancellationToken System.Threading.CancellationToken = default optional
public void ValidateSourceIdentity(CancellationToken cancellationToken = default) #

Checks a loaded path against its full snapshot identity. Stream snapshots have no retained external source.

Parameters

cancellationToken System.Threading.CancellationToken = default optional

Properties

public Guid Id { get; } #

Unique model identity.

public long Revision { get; private set; } #

Mutation revision. Rollback restores its starting revision.

public bool IsModified { get; } #

Whether the model has edits. No native persistence is implied.

public bool HasActiveUpdate { get; } #

Whether an edit scope must finish before reads or assessment.

public AccessCatalogStatus CatalogStatus { get; internal set; } #

Whether the loaded catalog is decoded or the objects are a new model.

public AccessFileFormat Format { get; } #

Selected or detected file family.

public AccessFormatProfile Profile { get; } #

Selected or detected physical generation.

public DocumentAccessMode AccessMode { get; } #

Document mutation policy.

public DocumentPersistenceMode PersistenceMode { get; } #

Native creation and unchanged snapshot preservation require an explicit Save.

public AccessInspection? Inspection { get; } #

Bounded native header evidence; null for a newly created model.

public AccessTableCollection Tables { get; } #

Modeled tables; native catalog decoding is a separate capability.

public AccessObjectCollection<AccessTable> SystemTables { get; } #

System and hidden table definitions, separate from ordinary user tables. Opening them never executes database logic.

public AccessObjectCollection<AccessCatalogEntry> Catalog { get; } #

Inert native catalog entries, including system and unknown objects. Catalog inventory does not decode application payloads.

public IReadOnlyList<AccessDiagnostic> Diagnostics { get; internal set; } #

Document-level decoding limits and unsupported-content diagnostics.

public IReadOnlyDictionary<string, object?> Properties { get; internal set; } #

Persisted database properties, including the AccessVersion format marker. Expressions remain inert.

public AccessOpaqueValue? NativeProperties { get; internal set; } #

Exact database property map, including unqualified chunks.

public int? CodePage { get; internal set; } #

Stored database code page. Jet3 uses qualified single-byte maps; Jet4/ACE text values use Unicode. Unsupported encodings are not converted lossily.

public int? SortOrder { get; internal set; } #

Stored collation identifier. Reading metadata does not implement engine sorting or query evaluation.

public AccessQueryCollection Queries { get; } #

Inert modeled query definitions.

public AccessRelationshipCollection Relationships { get; } #

Typed modeled relationships.

public AccessObjectCollection<AccessApplicationObject> Forms { get; } #

Form metadata boundary. Check CatalogStatus before interpreting absence.

public AccessObjectCollection<AccessApplicationObject> Reports { get; } #

Report metadata boundary. Check CatalogStatus before interpreting absence.

public AccessObjectCollection<AccessApplicationObject> Macros { get; } #

Action macro metadata boundary, separate from VBA.

public AccessVbaProjectInfo VbaProject { get; internal set; } #

Inert VBA inventory availability.

public IReadOnlyList<AccessStorageStream> ApplicationStreams { get; internal set; } #

Inert application storage streams with native paths, including unknown and compiled content.

public IReadOnlyList<AccessDependency> Dependencies { get; internal set; } #

Inert observed query, designer and relationship references. This is a partial dependency map, never an expression engine.

public IReadOnlyList<AccessDataMacroInfo> DataMacros { get; internal set; } #

Qualified native table data-macro XML definitions. Actions and expressions are retained without execution.

public IReadOnlyList<AccessResourceInfo> Resources { get; internal set; } #

Native resource metadata; embedded payloads use the existing lazy attachment reader.

public IReadOnlyList<AccessChange> ChangeJournal { get; } #

Committed or pending model mutations; rollback removes mutations from its scope.

public IReadOnlyList<AccessOperationCapability> Capabilities { get; } #

Operation boundaries for this document state, including unsupported native operations.