On Different Nuget Packages For Azure Table Data Access

As of today (5th Nov 2019) there are two Table data storage options available in Azure,

  1. Azure Table Storage
  2. Azure Cosmos DB (formerly Document DB)

The intention for this post is only focusing on the different nuget packages available for these two offerings to access data.

WindowsAzure.Storage

The ancient one. This was used to access any Azure Storage offerings (Blobs, Tables, Files, Queues) since the introduction of Azure Storage accounts (you can still see the name “WindowAzure”). This works with both .NET Framework and .NET Core. From version 9.4.x this monolith was spit into 4 different sub packages, they are

  1. Microsoft.Azure.Storage.Blob
  2. Microsoft.Azure.Storage.Queue
  3. Microsoft.Azure.Storage.File
  4. Microsoft.Azure.Storge.Common

As the names reflect, each of the packages doing their jobs well and first 3 packages are having a common dependency on the Microsoft.Azure.Storge.Common to perform common tasks (such as connecting to the storage service).

So, where is the so called Microsoft.Azure.Storage.Table for Table Storage?

read below.

Microsoft.Azure.DocumentDB

“DocumentDB is dead, long live the Cosmos DB” was how the announcement came. DocumentDB is the ancestor for Cosmos DB, thus this Microsoft.Azure.DocumentDB package was used until very recent times and was the only option to access Cosmos DB as well. This can still be used to access Cosmos DB resources (SQL API only) via .NET Framework

Microsoft.Azure.DocumentDB.Core

This is the .NET Core version for the Microsoft.Azure.DocumentDB.

Microsoft.Azure.CosmosDB.Table

Currently in maintenance mode and soon to be dead package, this was the first package to deliver “Table API” experience to .NET Framework so using this you can access both Azure Table Storage and Azure Cosmos DB tables.

Microsoft.Azure.Cosmos.Table

The new kid in town. Replacing Microsoft.Azure.CosmosDB.Table, supporting .NET standard and gives you the ability to work on both Azure Table Storage and Cosmos DB tables (aka Azure Premium Tables).

.NET Framework .NET Core Azure Table Storage Azure Cosmos DB
WindowsAzure.Storage
Microsoft.Azure.DocumentDB
Microsoft.Azure.DocumentDB.Core
Microsoft.Azure.CosmosDB.Table
Microsoft.Azure.Cosmos.Table

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s