`
bk_lin
  • 浏览: 336674 次
社区版块
存档分类
最新评论

Windows Azure入门教学系列 (四):使用Blob Storage

 
阅读更多

公告 :本博客为微软云计算中文博客 的镜像博客。 部分文章因为博客兼容性问题 ,会影响阅读体验 。如遇此情况,请访问 原博客


本文是 Windows Azure 入门教学 的第四篇文章。

本文将会介绍如何使用 Blob Storage Blob Storage可以看做是云端的文件系统。与桌面操作系统上不同,我们是通过 RESTAPI来进行对文件的操作。有关 RESTAPI的详细信息,请参见 Blob 服务 API

为了方便 .NET开发人员,我们在 SDK中提供了 Microsoft.WindowsAzure.StorageClient类来帮助发送 REST 请求。

在开始本教学之前,请确保你从 Windows Azure 平台下载 下载并安装了最新的 Windows Azure开发工具。 本教学使用 Visual Studio 2010作为开发工具。

步骤一:创建解决方案和项目

由于我们要在本地模拟环境下测试 Blob Storage,首先,请确保 Storage Emulator已经启动。我们可以找到管理器的进程手动启动或者让 Visual Studio 2010帮助我们启动他。

右击工具栏中 Windows Azure模拟器的图标,选择” Show Storage Emulator UI”。弹出如下图所示的窗口:

我们要关注的是 Service management Blob所在的一行。要确保 Status Running

确认完毕后启动 Visual Studio 2010,并且新建一个 Console项目。

步骤二:添加 SDK 程序集引用

请在项目属性页里确认项目的 Target framework的值是 .NET Framework 4 .NET Framework 3.5。然后添加对 C:/Program Files/Windows Azure SDK/v1.3/ref/Microsoft.WindowsAzure.StorageClient.dll的引用。该路径为 SDK默认安装路径,如果你不能在这个路径中找到 Microsoft.WindowsAzure.StorageClient.dll请从 SDK安装路径中寻找。

步骤三:添加代码

首先引用命名空间:

using Microsoft.WindowsAzure;

using Microsoft.WindowsAzure.StorageClient;

然后在 Main方法中加入如下代码:

static void Main(string [] args)

{

var storageAccount = CloudStorageAccount .DevelopmentStorageAccount;

var blobclient = storageAccount.CreateCloudBlobClient();

// 检查 container 是否被创建,如果没有,创建 container

var container = blobclient.GetContainerReference("helloworldcontainer" );

container.CreateIfNotExist();

// 新建一个 blob ,内容为 "Hello World"

var blob = container.GetBlobReference("myfile" );

blob.UploadText("Hello World!" );

// 读取并显示 blob 内容

var blobcontent = blob.DownloadText();

Console .WriteLine(blobcontent);

// 删除 blob

var succeed = blob.DeleteIfExists();

Console .WriteLine(succeed ? "Delete Succeed" : "Delete Failed" );

Console .ReadLine();

}

步骤四:观察并分析代码

步骤三中的代码中,首先我们通过 CloudStorageAccount.DevelopmentStorageAccount来说明我们使用的本地的 Development Storage自带账户而不是真正的云端存储服务账户。 (如果要用真实账户可以使用

//DefaultEndpointsProtocol=https 可以改成 DefaultEndpointsProtocol=http 表示用 HTTP 而不是 HTTPS

CloudStorageAccount .Parse("DefaultEndpointsProtocol=https;AccountName=[ 用户名 ];AccountKey=[ 密码 ]" );

来实例化对象 )然后通过该账户类来实例化一个 Blob客户端类。这两步是使用 SDK StorageClient程序集来调用 Blob Storage服务的必要步骤。接下来的代码逻辑可以分为四部分:

  1. 检查 container是否被创建,如果没有,创建 container
  2. 新建一个 blob,内容为 "Hello World"
  3. 读取并显示 blob内容
  4. 删除 blob

第一部分,我们得到一个 container的引用。就作用来说我们大致上可以把 container类比成是桌面操作系统中的文件夹。我们在得到引用后检查该 container是否存在。注意如果是用的真实账号,当调用 CreateIfNotExist()方法后就有 REST请求发出了。

后面几部分代码非常简单。我们可以看到 SDK提供给我们的 API是十分简单好用的。

步骤五:运行程序

F5调试程序。如果一切正常你将会看到输出的消息如下图所示:

步骤六:创建新的 Storage Account

使用支持 SilverLight的浏览器打开 https://windows.azure.com/ (注意:您可能需要输入您的 Live ID和密码来通过身份验证 ) 点击 New Storage Account

Create a New Storage Account对话框里,在标记为 Choose a subscription 的下拉框里选择一个订阅选项:

在标记为 Enter a URL的文本框里输入一个 URL前缀来指定它的 URL

选择区域:

最后点击 Create按钮完成创建。等待创建过程完成后,我们可以看到系统给我们分配了 3 URL,分别是 Blob URL Table URL Queue URL,以及刚才我们自己输入的用户名。

然后点击属性栏里的 Primary access key或者 Secondary access key可以看到这些 key的值。点击 View Storage Access Keys对话框里的 Copy to Clipboard按钮就可以拷贝到粘贴板里了。

步骤七:使用 Storage Account 运行程序

将代码里的 :

CloudStorageAccount .DevelopmentStorageAccount

替换成 :

CloudStorageAccount .Parse("DefaultEndpointsProtocol=https;AccountName=[ 用户名 ];AccountKey=[ 密码 ]" )

根据刚才创建的 Storage Account填入用户名和密码。最后运行程序的结果是一样的。但是这次用的是 Windows Azure上的 Blob Storage作为存储服务。

分享到:
评论

相关推荐

    Windows Azure使用入门 第七课:云端存储和管理数据.pdf

    ### Windows Azure 使用入门 第七课:云端存储和管理数据 #### Windows Azure 存储概述 在当今这个数据驱动的时代,随着数据量的爆炸性增长,企业和个人面临着如何有效存储、管理和利用这些数据的巨大挑战。微软的...

    无责任WindowsAzureSDK.NET开发入门(五):BlobStorage服务

    摘要:无责任WindowsAzureSDK.NET开发入门篇,将带来一系列基础文章:从WindowsAzure开发前准备工作、使用AzureAD管理用户信息、创建管理“云”服务、到使用BlobStorage服务等,帮助读者轻易上手使用这套开发工具。...

    《Windows Azure入门指南》

    总的来说,《Windows Azure入门指南》将引导你进入Azure的世界,理解其核心概念、开发流程和最佳实践,助你在云计算领域迈出坚实的第一步。无论你是开发者、系统管理员还是IT决策者,都能从中受益,为你的项目和业务...

    Windows Azure从入门到精通含源代码

    “Windows Azure从入门到精通含源代码”这本书很可能包含了实际示例,帮助读者通过实践理解Azure的用法。书中的源代码可能涵盖了如何使用Azure SDK进行开发,以及如何部署和管理应用程序。通过阅读和运行这些代码,...

    Windows.Azure从入门到精通

    《Windows Azure从入门到精通》是一本全面介绍微软云服务平台Windows Azure的指南,旨在帮助初学者快速理解和掌握Azure的核心概念和技术。通过本书,读者可以深入理解云计算的基础,以及如何利用Azure构建、部署和...

    细节增强的matlab代码-matlab-azure-blob:WindowsAzureBlob存储的MATLAB接口

    Azure存储Blob的MATLAB接口 这是一个MATLAB:registered:接口,可连接到Windows Azure:trade_mark:存储Blob(WASB)服务。 这是一个低级接口,如果MATLAB中提供的高级接口支持您的要求,建议使用该接口,有关更多详细...

    Azure入门指南_20150119.pdf

    ### Azure入门指南知识点详解 #### 一、云计算概述 **认识云计算** - **定义与特点:** - 云计算是一种通过互联网提供计算资源和服务的技术,它允许用户在无需管理底层硬件的情况下,根据需要获取和使用计算能力...

    无责任WindowsAzureSDK.NET开发入门(七):QueueStorage服务

    摘要:无责任WindowsAzureSDK.NET开发入门篇,将带来一系列基础文章:从WindowsAzure开发前准备工作、使用AzureAD管理用户信息、创建管理“云”服务、到使用BlobStorage服务等,帮助读者轻易上手使用这套开发工具。...

    react-native-azure-blob-storage:Azure中的文件存储

    $ npm install react-native-azure-blob-storage --save 大多是自动安装 $ react-native link react-native-azure-blob-storage 用法 import React , { Component } from 'react' ; import { Button , StyleSheet ...

    Windows Azure从入门到精通【高清】

    尽管部分内容没有提供具体的技术细节,但从标题“Windows Azure从入门到精通【高清】”来看,该资料应该涵盖了从基础知识到高级应用的各个方面。下面将基于这些信息,构建一系列与Microsoft Azure相关的知识点。 ##...

    azure-storage-blob-go:Azure存储Blob库的分支

    特征斑点存储创建/列出/删除容器创建/读取/列出/更新/删除块Blob 创建/读取/列出/更新/删除页面Blob 创建/读取/列出/更新/删除附加Blob入门如果还没有,请安装使用您喜欢的任何方法来获取SDK: 前往: go get github...

    Azure入门指南

    - **云端存储和管理数据**: 讲解如何使用Azure Blob Storage、Azure Files等服务存储和管理大量数据。 - **云端备份和灾难恢复**: 说明如何使用Azure Backup等服务保护数据,实现灾难恢复。 - **开发移动应用和...

    NLog.AzureStorage:用于将日志发送到Azure存储Blob的自定义NLog目标

    NLog.Azure存储 NLog.AzureStorage是的目标,允许您将日志消息实时发送到... WindowsAzure.Storage≥5.0.2 配置NLog 将程序集和新目标添加到NLog.config中: <?xml version="1.0" encoding="utf-8" ?> <nlo

    12天的azure学习清单

    #### DAY-1:云计算基础与Azure入门 **云计算定义** 云计算是一种通过互联网提供托管服务的技术,包括数据存储、服务器、数据库、网络连接以及软件等资源。这些资源都存储在由云服务提供商维护的物理服务器上,并...

    微软技术丛书:Windows.Azure从入门到精通

    微软技术丛书:《Windows Azure从入门到精通》是一本专门针对微软云计算平台Azure的入门级至进阶级学习指南。该书涵盖了Azure的基础知识、核心服务和高级特性,是希望通过Azure平台进行云服务开发和部署的专业人士的...

    azure-storage-android:适用于Android的Microsoft Azure存储库

    该项目提供了适用于Android的客户端库,可轻松使用Microsoft Azure存储服务。 有关文档,请参见 。 如果您正在寻找Azure存储Java SDK,请访问 。 特征 斑点 创建/读取/更新/删除容器 创建/读取/更新/删除Blob ...

    MMDB.AzureSample:Windows Azure 入门示例演示应用程序

    示例可能涵盖如Azure App Service(用于Web应用)、Azure Functions(无服务器计算)、Azure Storage(包括Blob、Queue和Table存储)、Azure Cosmos DB(全球分布式多模型数据库服务)等Azure服务的使用。...

Global site tag (gtag.js) - Google Analytics