<PackageReference Include="Azure.Storage.Blobs" Version="12.24.0-beta.1" />

TransferValidationOptionsExtensions

using System; namespace Azure.Storage { internal static class TransferValidationOptionsExtensions { public static StorageChecksumAlgorithm ResolveAuto(this StorageChecksumAlgorithm checksumAlgorithm) { if ((int)checksumAlgorithm == 0) return 3; return checksumAlgorithm; } public static UploadTransferValidationOptions ToValidationOptions(this byte[] md5) { if (md5 != null) { UploadTransferValidationOptions val = new UploadTransferValidationOptions(); val.set_ChecksumAlgorithm(2); val.set_PrecalculatedChecksum((ReadOnlyMemory<byte>)md5); return val; } return null; } public static DownloadTransferValidationOptions ToValidationOptions(this bool requestTransactionalMD5) { if (!requestTransactionalMD5) return null; DownloadTransferValidationOptions val = new DownloadTransferValidationOptions(); val.set_ChecksumAlgorithm(2); val.set_AutoValidateChecksum(false); return val; } public static void CopyTo(this TransferValidationOptions source, TransferValidationOptions dest) { TransferValidationOptionsExtensions.CopyTo(source.get_Upload(), dest.get_Upload()); TransferValidationOptionsExtensions.CopyTo(source.get_Download(), dest.get_Download()); } public static void CopyTo(this UploadTransferValidationOptions source, UploadTransferValidationOptions dest) { dest.set_ChecksumAlgorithm(source.get_ChecksumAlgorithm()); dest.set_PrecalculatedChecksum(source.get_PrecalculatedChecksum()); } public static void CopyTo(this DownloadTransferValidationOptions source, DownloadTransferValidationOptions dest) { dest.set_ChecksumAlgorithm(source.get_ChecksumAlgorithm()); dest.set_AutoValidateChecksum(source.get_AutoValidateChecksum()); } } }