Yatter.Storage.Azure
0.0.7
dotnet add package Yatter.Storage.Azure --version 0.0.7
NuGet\Install-Package Yatter.Storage.Azure -Version 0.0.7
<PackageReference Include="Yatter.Storage.Azure" Version="0.0.7" />
<PackageVersion Include="Yatter.Storage.Azure" Version="0.0.7" />
<PackageReference Include="Yatter.Storage.Azure" />
paket add Yatter.Storage.Azure --version 0.0.7
#r "nuget: Yatter.Storage.Azure, 0.0.7"
#:package Yatter.Storage.Azure@0.0.7
#addin nuget:?package=Yatter.Storage.Azure&version=0.0.7
#tool nuget:?package=Yatter.Storage.Azure&version=0.0.7
Yatter.Storage.Azure
Our ResponsiveBlobManager uses a TRequest / TResponse pattern, vis-a-vis:
var response = await responsiveBlobManager.GetBlobAsync<BlobResponse, BlobRequest>(blobRequest);
Where BlobRequest and BlobResponse are implementations of RequestBase and ResponseBase, respectively.
Both base objects expose the underlying objects so that any advanced work can be done in the base overrides.
Quickstart
var connectionString = "{SET CONNECTION STRING HERE}";
var containerName = "{SET CONTAINER NAME HERE}";
var blobPath = "{SET BLOB NAME HERE}";
var responsiveBlobManager = new Yatter.Storage.Azure.ResponsiveBlobManager();
var blobRequest = new Models.BlobRequest();
blobRequest.SetConnectionString(connectionString);
blobRequest.SetContainerName(containerName);
blobRequest.SetBlobPath(blobPath);
var response = await responsiveBlobManager.GetBlobAsync<BlobResponse, BlobRequest>(blobRequest);
var isSuccess = response.IsSuccess;
var message = response.Message;
var blobContent = response.Content;
Methods:
- GetBlobAsync
- UploadBlobAsync
- ExistsBlobAsync
- DeleteBlobAsync
Limitations:
- None, the Azure objects are exposed in the TRequest and TResponse base classes.
Minimal Example TResponse class
public sealed class BlobResponse : ResponseBase
{
public BlobResponse()
{
}
}
Minimal Example TRequest class
public sealed class BlobRequest : RequestBase
{
public void SetConnectionString(string connectionString)
{
ConnectionString = connectionString;
}
public void SetContainerName(string name)
{
ContainerName = name;
}
public void SetBlobPath(string path)
{
BlobPath = path;
}
}
Advanced Example of TResponse Access to Underlying Azure objects
public class BlobResponse : ResponseBase
{
public BlobResponse()
{
}
public override void AddBlobDownloadResult(BlobDownloadResult blobDownloadResult)
{
// Do something with blobDownloadResult here!
base.AddBlobDownloadResult(blobDownloadResult);
}
}
Advanced Example of TRequest Access to Underlying Azure objects
public sealed class BlobRequest : RequestBase
{
public void SetConnectionString(string connectionString)
{
ConnectionString = connectionString;
}
public void SetContainerName(string name)
{
ContainerName = name;
}
public void SetBlobPath(string path)
{
BlobPath = path;
}
public override void AddBlobClient(BlobClient client)
{
// Do something with client here!
base.AddBlobClient(client);
}
public override void AddBlobContainerClient(BlobContainerClient client)
{
// Do something with client here!
base.AddBlobContainerClient(client);
}
public override void AddBlobServiceClient(BlobServiceClient client)
{
// Do something with client here!
base.AddBlobServiceClient(client);
}
}
| Product | Versions 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Azure.Storage.Blobs (>= 12.10.0)
- Microsoft.Azure.Storage.Blob (>= 11.2.3)
- Newtonsoft.Json (>= 13.0.1)
- Yatter.Invigoration (>= 0.3.0)
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 |
|---|---|---|
| 0.0.7 | 520 | 10/18/2021 |
Alpha Release