当前位置: 首页>>代码示例>>C#>>正文


C# CloudBlob.DownloadByteArray方法代码示例

本文整理汇总了C#中Microsoft.WindowsAzure.StorageClient.CloudBlob.DownloadByteArray方法的典型用法代码示例。如果您正苦于以下问题:C# CloudBlob.DownloadByteArray方法的具体用法?C# CloudBlob.DownloadByteArray怎么用?C# CloudBlob.DownloadByteArray使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Microsoft.WindowsAzure.StorageClient.CloudBlob的用法示例。


在下文中一共展示了CloudBlob.DownloadByteArray方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Mutex

        // The mutex must already exists
        public Mutex(CloudBlobContainer container, string mutexName, Exception e)
        {
            blob = container.GetBlobReference(mutexName);

            byte[] b1 = { 1 };
            BlobRequestOptions requestOpt = new BlobRequestOptions();
            bool keepGoing = true;
            string oldEtag = "";
            int lastChange = 0;
            do
            {
                byte[] b;
                string eTag;
                try
                {
                    blob.FetchAttributes();
                    eTag = blob.Attributes.Properties.ETag;
                    if (eTag != oldEtag)
                    {
                        lastChange = Environment.TickCount;
                        oldEtag = eTag;
                    }
                    b = blob.DownloadByteArray();
                }
                catch (Exception)
                {
                    throw e;
                }

                requestOpt.AccessCondition = AccessCondition.IfMatch(eTag);
                if (b[0] == 0 || Environment.TickCount - lastChange > 3000) // on ne peut garder un lock plus de 3 s
                {
                    try
                    {
                        blob.UploadByteArray(b1, requestOpt);
                        keepGoing = false;
                    }
                    catch (StorageClientException ex)
                    {
                        if (ex.ErrorCode != StorageErrorCode.ConditionFailed)
                            throw;
                    }
                }
                else
                    Thread.Sleep(50);   // constante arbitraire
            } while (keepGoing);
        }
开发者ID:ismaelbelghiti,项目名称:Tigwi,代码行数:48,代码来源:Mutex.cs

示例2: MoveBlob

        internal static void MoveBlob(CloudBlob blob, string topath = "", string currentpath = "")
        {
            // Retrieve stroage account from connection string
            CloudStorageAccount storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("StorageConnectionString"));

            // Create the blob client
            CloudBlobClient client = storageAccount.CreateCloudBlobClient();

            CloudBlobContainer blobContainer = null;
            CloudBlobDirectory toFolder = null;

            CloudBlob newblob = null;

            if (topath.Contains('/')) {
                toFolder = client.GetBlobDirectoryReference(topath);
                string filepath = blob.Name.Substring(blob.Name.IndexOf("/") + 1);
                newblob = toFolder.GetBlobReference(filepath);
            } else {
                blobContainer = client.GetContainerReference(topath);
                string filepath = blob.Name.Substring(blob.Name.IndexOf("/") + 1);
                newblob = blobContainer.GetBlobReference(filepath);
            }
            newblob.UploadByteArray(blob.DownloadByteArray());
            blob.DeleteIfExists();
        }
开发者ID:meganmcchesney,项目名称:CURTeCommerce,代码行数:25,代码来源:BlobManagement.cs


注:本文中的Microsoft.WindowsAzure.StorageClient.CloudBlob.DownloadByteArray方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。