Tag: azure sdk .net

Azure资源组使用SDK设置标签?

我使用类似于http://blogs.infinitesquare.com/b/tranise/archives/-azure-resource-group-une-nouvelle-facon-dorganiser-ses-environnements-dans-azure#.Vr1RrfIrLgk的代码来创建一个Azure中的资源组使用C#。 我现在正试图通过在资源上放置标签来扩展它。 添加resourceGroupGetResult.ResourceGroup.Tags.Add(“a”,”1″)有效,但后续CreateOrUpdateAsync调用失败, “InvalidRequestContent: The request content was invalid and could not be deserialized: ‘Could not find member ‘provisioningState’ on object of type ‘ResourceGroupDefinition’. Path ‘provisioningState’, line 9, position 23.’.” 将标签添加到资源组的正确方法是什么? 当然,我希望在此之后将相同的标签添加到组内的资源。 谢谢。

Azure Fluent API – AppServicePlanOperations.ListMetricsWithHttpMessagesAsync返回InternalServerError

可以在此处找到此方法的文档 这是我的代码: var appServiceManager = AppServiceManager.Authenticate(credentials, subscriptionId); var filter = “(name.value eq ‘CpuPercentage’) and startTime eq ‘2017-10-06T08:00:00Z’ and endTime eq ‘2017-10-06T09:00:00Z’ and timeGrain eq duration’PT1H'”; var metrics = appServiceManager.AppServicePlans.Inner.ListMetricsWithHttpMessagesAsync(“myResourceGroupName”, “myAppServicePlanName”, false, filter).Result; 这是我得到的唯一详细例外: 发生了一个或多个错误。 (操作返回无效的状态代码’InternalServerError’)—> Microsoft.Rest.Azure.CloudException:操作返回无效的状态代码’InternalServerError’ 文档说过filter是可选的,它不是(如果我传入null我得到一个BadRequest)。 我现在提供一个,现在它抛出内部服务器错误。 我已经在azure-sdk-for-net回购中打开了一个问题,但是我希望其他人可以看到我在我的filter字符串中是否犯了任何错误。

CloudBlockBlob.DownloadToStream与DownloadRangeToStream

尝试使用ASP.NET azure SDK从blob存储中下载图像。 我在另一篇文章中读到,DownloadToStream确实将blob打破成小块并并行下载它们以提高性能。 我相信这就是DownloadRangeToStream的用途。 我无法找到任何关于DownloadToStream的文档或代码确认,并且持怀疑态度,因为它具有与blob url直接下载相同的运行时(每次下载.5-3s)。 这是我的下载方法的代码,给出了相同的性能。 使用CloudBlockBlob.DownloadToStream: private Bitmap DownloadFromBlob(String set) { CloudStorageAccount storageAccount = CloudStorageAccount.Parse( CloudConfigurationManager.GetSetting(“StorageConnectionString”)); CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); CloudBlobContainer container = blobClient.GetContainerReference(“templates”); CloudBlockBlob blockBlob = container.GetBlockBlobReference(set + “.png”); using (var memoryStream = new MemoryStream()) { blockBlob.DownloadToStream(memoryStream); return (memoryStream == null) ? null : (Bitmap)Image.FromStream(memoryStream); } } 使用Image.FromStream: private Bitmap DownloadImageFromUrl(string […]

从Azure Blob获取最新文件

假设我每天在blob存储中生成几个json文件。 我想要做的是在我的任何目录中修改最新的文件。 所以我的blob中有这样的东西: 2016/01/02/test.json 2016/01/02/test2.json 2016/02/03/test.json 我想得到2016/02/03/test.json 。 因此,一种方法是获取文件的完整路径并进行正则表达式检查以查找创建的最新目录,但如果我在每个目录中有多个josn文件,则这不起作用。 是否有类似File.GetLastWriteTime来获取最新的修改文件? 我正在使用这些代码获取所有文件btw: public static CloudBlobContainer GetBlobContainer(string accountName, string accountKey, string containerName) { CloudStorageAccount storageAccount = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true); // blob client CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); // container CloudBlobContainer blobContainer = blobClient.GetContainerReference(containerName); return blobContainer; } public static IEnumerable GetBlobItems(CloudBlobContainer container) { IEnumerable items = container.ListBlobs(useFlatBlobListing: […]