Sign in Sign up
nuget

ASCDataAccessLibrary

The only ORM and data access framework for Azure Table Storage in the .NET ecosystem. ASCDataAccessLibrary gives .NET developers (6 through 10) an Entity-Framework-style experience — lambda expression queries, strongly-typed entities, automatic serialization, batch operations, and fluent extension methods — on top of the most cost-effective NoSQL cloud database available. v4.3 adds a complete performance layer: a SINGLE unified result cache (one class, one Count, one Clear, one TTL model) with declarative per-entity tuning via [CachePolicy], delta-refresh for append-only data (logs, audit, events) that keeps the cache current at minimal wire cost, SingleFlight coalescing of concurrent identical fetches, paged-result caching, and IAsyncEnumerable streaming for Azure Tables (matching the blob streaming shipped in v4.0). Every existing call site in your codebase gets faster the moment you upgrade — no consumer code change required. Write idiomatic C# against Azure Table Storage and Azure Blob Storage without touching the raw SDK: • var customer = await new Customer().LoadAsync(x => x.CompanyId == id) • await customer.SaveAsync() • await customers.DeleteAsync() • [CachePolicy("5m")] on the entity → process-wide caching with write-through invalidation • await foreach (var row in da.StreamCollectionAsync(predicate)) → progressive-render UIs Key features: • Lambda expression queries with automatic hybrid server-side / client-side OData splitting • Strongly-typed entities with transparent decimal precision, large string chunking, and enum serialization • Dynamic entities (DynamicEntity) for schema-free, runtime-defined data — telemetry, ETL, multi-tenant config • Batch insert / update / delete up to any size — auto-chunked at Azure's 100-entity limit • Cursor-based pagination with continuation tokens • IAsyncEnumerable streaming for Azure Tables — StreamCollectionAsync yields rows as the SDK pages them (NEW in v4.3) • Result caching with [CachePolicy] — attribute-driven, TTL-based, write-through invalidation (NEW in v4.3) • Zero-config request memoization — auto-creates an AsyncLocal scope on first DAL touch (NEW in v4.3) • SingleFlight coalescing — concurrent identical fetches share one Azure round-trip (NEW in v4.3) • Azure Blob Storage with IAsyncEnumerable streaming, lambda tag filtering, and FFmpeg video compression • Persistent resumable work queues (QueueData<T> + StateList<T>) with crash recovery and position tracking • Azure Table Storage session management for ASP.NET Core, desktop, console, and background service apps • First-class ILogger provider — standard .NET structured logging backed by Azure Table Storage • TableStorage.Configure() once in Program.cs — credentials resolved automatically across the entire app Built and maintained by Answer Sales Calls Inc. (ASC). Targets Azure.Data.Tables SDK v12 (no legacy Cosmos.Table dependency). Ships as net9.0 — compatible with .NET 9 and .NET 10 SDK builds. .NET 6, 7, and 8 consumers install via NuGet TFM fallback. Tags: Azure Table Storage ORM, NoSQL database .NET, Entity Framework alternative Azure, Lambda query Azure Storage, Azure data access library, cloud database C#, Azure Blob Storage .NET, result caching .NET, request-scoped memoization, IAsyncEnumerable streaming, SingleFlight coalescing, session management Azure, structured logging Azure Table, queue management .NET, DynamicEntity schema-free storage

nuget View on Nuget

Activity

Latest release
2mo ago
Total releases
22
Cadence
~8 days
Last 12 months
9

Details

First release
May 10, 2025
Releases
Version Released
4.3.0 minor
4.2.0 minor
4.1.0 minor
4.0.5 patch
4.0.4 patch
4.0.3 patch
4.0.2 patch
4.0.1 patch
4.0.0 major
3.1.0 minor
3.0.0 major
2.5.0 minor
2.4.0 minor
2.3.0 minor
2.2.0 minor
2.1.0 minor
2.0.0 major
1.0.4 patch
1.0.3 patch
1.0.2 patch
1.0.1 patch
1.0.0 initial