TheByteStuff.AzureTableUtilities 4.5.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package TheByteStuff.AzureTableUtilities --version 4.5.1                
NuGet\Install-Package TheByteStuff.AzureTableUtilities -Version 4.5.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TheByteStuff.AzureTableUtilities" Version="4.5.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TheByteStuff.AzureTableUtilities --version 4.5.1                
#r "nuget: TheByteStuff.AzureTableUtilities, 4.5.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install TheByteStuff.AzureTableUtilities as a Cake Addin
#addin nuget:?package=TheByteStuff.AzureTableUtilities&version=4.5.1

// Install TheByteStuff.AzureTableUtilities as a Cake Tool
#tool nuget:?package=TheByteStuff.AzureTableUtilities&version=4.5.1                

Backup, Copy, Delete and Restore options for use with Azure Tables.  An alternative to tools such as AZCopy.

Backup destination may be to a local file or to Azure storage blob.  File may be optionally compressed (zipped).
Copy allows for the same or different connection spec for Source and Destination.
Restore location may be from local file or Azure storage blob.
Blob storage and Azure Table storage connection specs may point to different servers to allow for use in production backup scenarios as well as for restoration of development environments.

Restore/Copy will create the table if it does not exist, however data on an existing table will not be deleted. It may be overwritten depending on the source data.

Delete allows for full table deletion as well as for rows.

When working with Blob storage, a folder in the format {BlobRootName}--table-{TableName} will be used to store the file or retreive the file under the Blob root specified.  File created will be in the format {TableName}_Backup_{TimeStamp}.

Backup, Copy and Delete operations allow for an optional list of filters (Filter) to be provided to select a subset of the source data for the transation.

Refer to project url for code snippets and additional information.

The Byte Stuff, LLC is not affiliated with Microsoft nor has Microsoft endorsed this project.

Personal and commercial use of this software is free; however, a donation is appreciated if you find the software useful.

Code for a command line executable along with sample Docker build is available on GitHub -- https://github.com/TheByteStuff/AzureTableBackupRestore

Suggestions or donations are both appreciated and welcome can be made by using the "Contact" tab at https://www.thebytestuff.com/Contact?utm_source=nuget&amp;utm_medium=www&amp;utm_campaign=AzureTableUtilities

v5.0.0-pre - beta including Cosmos Table 2.0.0 Preview
v4.5.0 - Added "All" option to Copy and Backup to process all tables under a storage connection at once.
v4.4.1 - Updated backup to blob logic to increase stream write size as a fix to overflow exceptions for large tables.
v4.4.0 - Added additional methods for backup/restore to use Blob storage directly and eliminate the need for a local working directory.
v4.3.0 - Added additional parameter validation, code cleanup for initial github publish
v4.2.2 - Corrected problem with filters on backup to blob
v4.2.1 - Corrected Nuspec to show .Net Standard in docs
v4.2.0 - Change target framework from .Net Core 2.0 to .Net Standard 2.0
v4.1.0 - Added RowKey option to Filters, update Microsoft.Azure.Cosmos version to 3.10.1
v4.0.2 - updated Nuspec to minimum dependent versions
v4.0.1 - updated Nuspec to minimum dependent versions
v4.0 - Updated package dependencies to latest released versions, removed Microsoft.Extensions.Configuration; Microsoft.Extensions.Configuration.Json; Microsoft.Extensions.Configuration.FileExtensions as they are not needed by base libraries
v3.0 - added delete table option, refactored base exception to be AzureTableUtilitiesException, updated class/method documentation
v2.1 - added Filter constructor, corrected return message on successful copy.
v2.0 - added "Copy" option as well as Filters.
v1.0 - Initial release.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
6.1.0 2,722 7/22/2024
6.0.0 5,120 6/25/2023
5.6.2-pre 611 8/18/2022
5.6.1-pre 483 6/24/2022
5.4.1-pre 637 7/29/2021
5.4.0-pre 698 3/3/2021
5.3.0-pre 721 7/28/2020
5.0.0-pre 776 6/25/2020
4.6.3 3,336 1/12/2023
4.6.2 3,660 8/18/2022
4.6.1 2,248 6/23/2022
4.5.1 4,615 9/2/2021
4.5.0 2,509 8/5/2021
4.4.1 1,064 7/29/2021
4.4.0 5,709 3/2/2021
4.3.0 1,547 7/28/2020
4.2.2 1,097 7/16/2020
4.2.1 971 7/7/2020
4.2.0 1,010 7/7/2020
4.1.0 1,008 6/30/2020
4.0.2 1,019 6/25/2020
4.0.1 1,066 6/25/2020
4.0.0 931 6/25/2020
3.0.0 1,070 6/23/2020
2.1.0 1,015 6/16/2020
2.0.0 987 6/11/2020
1.0.1 971 5/14/2020
1.0.0 1,012 5/12/2020

Added check to confirm directory exists for Backup to File or Blob as well as Restore from Blob.  A ParameterSpecException if the directory does not exist.