SujaySarma.Data.Azure.Tables
7.0.0
See the version list below for details.
dotnet add package SujaySarma.Data.Azure.Tables --version 7.0.0
NuGet\Install-Package SujaySarma.Data.Azure.Tables -Version 7.0.0
<PackageReference Include="SujaySarma.Data.Azure.Tables" Version="7.0.0" />
paket add SujaySarma.Data.Azure.Tables --version 7.0.0
#r "nuget: SujaySarma.Data.Azure.Tables, 7.0.0"
// Install SujaySarma.Data.Azure.Tables as a Cake Addin #addin nuget:?package=SujaySarma.Data.Azure.Tables&version=7.0.0 // Install SujaySarma.Data.Azure.Tables as a Cake Tool #tool nuget:?package=SujaySarma.Data.Azure.Tables&version=7.0.0
SujaySarma.Data.Azure.Tables
version 7.0.0
Changes and reasons why:
Until version 6.4.0, we depended on the
Microsoft.Azure.Cosmos.Table
library. This library has been deprecated by Microsoft and no new development will be done on it. Microsoft has built a new libraryAzure.Data.Tables
and they recommend developers move to this new library.While the old library was feature-rich, that we could leverage in this library, we provided a lot of really useful features. However, the new library lacks many APIs. For example, the new API does not provide a way to check if a Table exists. Due to such breaking changes, we have (one of):
Tried to create a workaround using other well-known public APIs
Created our own API using REST API (ultimately all Azure Storage and Cosmos calls end up as REST API calls)
Removed support for the call or property -- with a heavy heart! 😦
Our own API surface layer
In version 6.x, we introduced the AzureTablesContext class, we have continued development of this and exposed many more simplified APIs in this class. For example, instead of having to populate the Query object, you can now use the exposed multi-parameter functions. We have also added wrapper methods for Insert/Update/Delete operations. Don't worry, under the hood we simply reparameterize and call the old methods to ensure predictable results.
When using the TableContext method, multiple object types will now support easy extensions. For example, if you have an
IEnumerable<T>
, you can now dolist.Insert(tblContext)
--- this is equivalent totblContext.Insert(list)
.
Optimizations
We have a raft of performance optimizations under the hood:
- Simplified our Reflection layer, removing call paths, properties etc that we never used.
- Optimized between flags and object references based on how we were using them.
- (de)Serialization functions optimized to only pull or push information that was required. For example, when directly deleting a record from Azure, we no longer populate the full .NET object.
- Bug-prone calls have been dropped. For example, the Join system introduced a long time ago had severe performance problems (mainly because Azure Storage Tables and Cosmos DB do not support inter-entity relationships like SQL) -- so this are gone now.
Hope you enjoy using this library. I do!
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- Azure.Data.Tables (>= 12.6.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
9.1.0 | 98 | 6/26/2024 |
8.5.0 | 149 | 12/19/2023 |
8.0.0 | 461 | 1/9/2023 |
7.4.0 | 411 | 9/16/2022 |
7.3.0 | 409 | 9/8/2022 |
7.2.0 | 412 | 9/8/2022 |
7.0.0 | 400 | 8/28/2022 |
6.4.0 | 463 | 8/4/2022 |
6.3.5 | 573 | 3/24/2022 |
6.3.0 | 369 | 9/9/2021 |
6.2.2 | 326 | 8/20/2021 |
6.2.0 | 356 | 8/18/2021 |
6.0.0 | 441 | 8/13/2021 |
5.1.5 | 439 | 6/30/2021 |
5.1.0 | 378 | 5/6/2021 |
5.0.0 | 366 | 5/2/2021 |
Version 7.0.0
This is an almost complete re-write of the package as I moved it from the earlier Microsoft.Azure.Cosmos.Table [deprecated] package to the new Azure.Data.Tables. There are a lot of API changes between the two underlying packages and some of our APIs had to change significantly to work with the Azure.Data.Tables API. The codebase is significantly reduced in most areas.