版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdf
2、ghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwert
3、yuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxc
4、vbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasd
5、fghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwer
6、tyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjk
7、lzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuio
8、pasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnm
9、qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmrtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghj
10、klzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnm虚拟机创建2016/12/10杨大爷s 班德尔城目录1.创建虚拟机2法发一:快速创建2方法二:从库中32.连接虚拟机43.疑问:61.Azure 能否在我的虚拟机上
11、运行防病毒软件?62.有哪些选项可用于备份和恢复?6云服务61.虚拟机的创建与连接1.创建虚拟机可以利用 Azure 虚拟机将 Windows Server、Linux 或第三方软件映像部署到 Azure,而且可以选择库中的映像或使用自己的自定义映像。Azure 映像库提供下列版本的 Windows Server:Windows Server 2008,Windows Server 2008 R2,Windows Server 2012 及 Windows Server 2012 R2。Azure 映像库也提供下列版本的 SQL Server:包含 SQL Server 2014,SQL Se
12、rver 2012,SQL Server 2008 R2 各版本。当然,还有很多,不一一列举了。法发一:快速创建快速简单,只需简单填写就能创建自己的虚拟机方法二:从库中库里的映像都有相应的介绍,我们可以根据需求选择自己的虚拟机映像创建完毕2.连接虚拟机点击连接后会下载一个rdp格式的文件,我们点击打开就可以进行连接,用户名就是我们创建虚拟机时设的用户名和密码:连接成功如下图:然后我们就可以通过远程桌面操控我们的虚拟机了,简单试了试,可以上网,当然我们也可以直接把自己主机上的东西通过远程桌面复制到虚拟机上。Azure 虚拟机磁盘中包含一个临时盘,D:磁盘 (Windows) 或者 /dev/sd
13、b1 (Linux)。他们仅提供临时存储,所以可能会有丢失数据的风险且数据无法恢复。该情况发生的常见方式是虚拟机迁移到不同主机上时。虚拟机迁移的一些原因包括调整虚拟机大小、更新主机或主机上硬件故障。3.疑问:1.Azure 能否在我的虚拟机上运行防病毒软件?Azure 针对防病毒解决方案提供了多种选项,但需要用户自行管理。例如,你可能需要另外订阅反恶意软件的软件,并需要自行决定运行扫描和安装更新的时间。你可以在创建 Windows 虚拟机时通过适用于 Microsoft 反恶意软件或 TrendMicro Deep Security Agent 的 VM 扩展来添加防病毒支持,也可以稍后进行。
14、2.有哪些选项可用于备份和恢复?在某些区域,Azure 备份提供预览版。认证合作伙伴提供了其他解决方案。若要了解当前提供的内容,请搜索 Azure 应用商店。另一个选项是使用 blob 存储的快照功能。为此,需要在进行任何依赖于 blob 快照的操作之前关闭 VM。这会保存挂起数据写入并保持文件系统的一致状态。2. 存储1.简介Azure 存储是一类可供您随时随地访问的高度持久、高度可用且高度可缩放的云存储。根据存储容量、存储事务数(对存储执行的读写操作的次数)和已传输的数据向客户收取 Azure 存储空间的费用。存储分为五类:块 Blob:块 Blob 是一种用于可靠地存储大量 Blob 数
15、据的经济实用的可扩展方式。典型用例包括数据共享、大数据和备份。文件:文件允许 Azure 数据中心的 VM 使用 SMB 协议安装共享文件系统,以及使用标准 Windows 文件 API 访问文件系统。虚拟机可以同时连接到这些文件系统,这使得您可以轻松地在不同角色和实例之间共享永久性数据。您还可以使用 Windows 文件 API 或文件 REST API 访问您的数据。页 Blob 和磁盘:页 Blob 提供针对随机访问和频繁更新优化的块存储。由于其性能、持久性和可靠性较高,因此可将其用作 Azure 中的 VM 的永久性磁盘。表:表是高度可缩放且极易使用的 NoSQL 数据库。它们为结构化
16、数据和半结构化数据提供基于存储的密钥值。队列:队列提供了一个用来计划异步任务的可靠的消息传递系统,并实现了永久性消息传递。另外,我们提供了存储的三个冗余级别:本地冗余存储 (LRS):我们在一个区域内维护数据的多个副本以提供高持久性。异地冗余存储 (GRS):我们通过在同一地域内相隔数百英里的两个区域之间进行复制来异步提供额外的数据持久性。在两个区域中,我们维护数据的多个副本。读取访问异地冗余存储 (RA-GRS):除了异地冗余的存储服务外,我们提供对辅助区域(它具有主存储系统中数据的最终一致的版本)中存储帐户的只读访问。当主区域中的存储帐户不可用时,客户可以使用此服务访问其数据。2. Blo
17、b 存储什么是 Blob 存储Azure Blob 存储是用于存储大量非结构化数据(例如文本或二进制数据)的服务,这些数据可通过 HTTP 或 HTTPS 从世界各地进行访问。你可以使用 Blob 存储向外公开数据,或者私下存储应用程序数据。Blob 存储的常见用途包括: 直接向浏览器提供图像或文档 存储文件以供分布式访问 对视频和音频进行流式处理 存储数据以用于备份和还原、灾难恢复及存档 存储数据以供本地或 Azure 托管服务执行分析Blob 服务概念Blob 服务包含以下组件: 存储帐户:对 Azure 存储服务的所有访问都要通过存储帐户来完成。此存储帐户可以是常规用途存储帐户,也可以是
18、专用于存储对象/Blob 的Blob 存储帐户。有关存储帐户的详细信息,请参阅Azure 存储帐户。 容器:一个容器包含一组 blob 集。所有 blob 必须位于相应的容器中。一个帐户可以包含无限个容器。一个容器可以存储无限个 Blob。请注意,容器名称必须小写。 Blob:任何类型和大小的文件。Azure 存储空间提供三种类型的 Blob:块 Blob、页 Blob 和追加 Blob。块 Blob特别适用于存储短的文本或二进制文件,例如文档和媒体文件。追加 Blob类似于块 Blob,因为它们是由块组成的,但针对追加操作对它们进行了优化,因此它们适用于日志记录方案。单个块 Blob 或追加
19、 Blob 可以包含最多 50000 个块,每个块最大 4 MB,总大小稍微大于 195 GB (4 MB X 50000)。页 Blob最大可达 1 TB 大小,并且对于频繁的读/写操作更加高效。Azure 虚拟机使用页 Blob 作为 OS 和数据磁盘。设置开发环境接下来在 Visual Studio 中设置开发环境,然后即可试用本指南中提供的代码示例。创建 Windows 控制台应用程序项目在 Visual Studio 中创建 Windows 控制台应用程序,如下所示:本教程中的所有代码示例都可以添加到控制台应用程序中program.cs中的Main()方法。请注意,你可以从任意类型的
20、 .NET 应用程序中使用 Azure 存储客户端库,包括 Azure 云服务、Azure Web 应用、桌面应用程序或移动应用程序。为简单起见,我们在本指南中使用控制台应用程序。使用 NuGet 安装所需包为完成此教程,你需要将两个包安装到项目: 适用于 .NET 的 Microsoft Azure 存储客户端库:此包提供以编程方式访问存储帐户中数据资源的权限。 适用于 .NET 的 Microsoft Azure Configuration Manager 库:此包提供用于分析配置文件中连接字符串的类,而不考虑应用程序在何处运行。可以使用 NuGet 获取这两个包。执行以下步骤:1. 在“
21、解决方案资源管理器”中,右键单击您的项目并选择“管理 NuGet 包”。2. 在线搜索“WindowsAzure.Storage”,然后单击“安装”以安装存储客户端库和依赖项。3. 在线搜索“ConfigurationManager”,然后单击“安装”以安装 Azure 配置管理器。NOTE:Azure SDK for .NET中也包含存储客户端库包。但是我们建议同时从 NuGet 安装存储客户端库,以确保始终使用客户端库的最新版本。用于 .NET 的存储空间客户端库中的 ODataLib 依赖项可通过在 NuGet (而非 WCF 数据服务)上获得的 ODataLib 包(5.0.2 版和更
22、高版本)来解析。ODataLib 库可直接下载或者通过 NuGet 由代码项目引用。存储空间客户端库使用的具体 ODataLib 包为OData、Edm和Spatial。尽管这些库由 Azure 表存储类使用,但是用存储空间客户端库进行编程时,它们是必需的依赖项。确定目标环境可从两个环境中选择用于运行本指南中示例的环境: 可针对云中的 Azure 存储帐户运行代码。 可针对 Azure 存储模拟器运行代码。存储模拟器是模拟云中 Azure 存储帐户的本地环境。应用程序处于开发阶段时,可以选择使用模拟器免费测试和调试代码。模拟器使用已知帐户和密钥。有关详细信息,请参阅使用 Azure 存储模拟器
23、进行开发和测试如果你以云中的存储帐户为目标,请从 Azure 门户预览复制存储帐户的主访问密钥。有关详细信息,请参阅查看和复制存储访问密钥。NOTE:您可以指向存储模拟器以避免引发与 Azure 存储空间有关的任何费用。但是,如果您确实选择指向云中的 Azure 存储帐户,则执行此教程的费用将会忽略不计。配置存储连接字符串用于 .NET 的 Azure 存储空间客户端库支持使用存储连接字符串来配置终结点和用于访问存储服务的凭据。维护存储连接字符串的最佳方法在配置文件中。有关连接字符串的详细信息,请参阅配置 Azure 存储空间的连接字符串。NOTE:您的存储帐户密钥类似于您的存储帐户的根密码。
24、始终要小心保护存储帐户密钥。避免将其分发给其他用户、对其进行硬编码或将其保存在其他人可以访问的纯文本文件中。如果认为密钥可能已泄漏,请使用 Azure 门户预览重新生成密钥。若要配置连接字符串,请从 Visual Studio 中的解决方案资源管理器打开app.config文件。添加元素的内容,如下所示。将account-name替换为您的存储帐户名称,将account-key替换为您的存储帐户密钥:例如,配置设置将类似于:若要以存储模拟器为目标,可使用映射到已知帐户名称和密钥的快捷方式。在这种情况下,连接字符串设置将如下:添加命名空间声明将以下using语句添加到program.cs文件的顶
25、部:usingMicrosoft.Azure;/NamespaceforCloudConfigurationManagerusingMicrosoft.WindowsAzure.Storage;/NamespaceforCloudStorageAccountusingMicrosoft.WindowsAzure.Storage.Blob;/NamespaceforBlobstoragetypes解析连接字符串适用于 .NET 的 Microsoft Azure Configuration Manager 库提供用于分析配置文件中连接字符串的类。CloudConfigurationManager
26、 类分析配置设置,而不考虑客户端应用程序是在台式计算机、移动设备、Azure 虚拟机还是 Azure 云服务中运行。若要引用 CloudConfigurationManager 包,请将以下using语句添加到你的类:usingMicrosoft.Azure;/NamespaceforCloudConfigurationManager下面的示例演示了如何检索配置文件中的连接字符串:/Parsetheconnectionstringandreturnareferencetothestorageaccount.CloudStorageAccountstorageAccount=CloudStora
27、geAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);不一定要使用 Azure Configuration Manager。还可以使用 API,例如 .NET Framework 的ConfigurationManager 类。创建 Blob 服务客户端CloudBlobClient类使你能够在 Blob 存储中检索容器和 blob。下面是创建服务客户端的一种方法:CloudBlobClientblobClient=storageAccount.CreateCloudBlobClient();
28、现在,你已准备好编写从 Blob 存储读取数据并将数据写入 Blob 存储的代码。创建容器Azure 存储中的每个 Blob 必须驻留在一个容器中。该容器构成 Blob 名称的一部分。例如,在这些示例 Blob URI 中,mycontainer是容器的名称:容器名称必须是有效的 DNS 名称,并符合以下命名规则:1. 容器名称必须以字母或数字开头,并且只能包含字母、数字和短划线 (-) 字符。2. 每个短划线 (-) 字符的前面和后面都必须是一个字母或数字;在容器名称中不允许连续的短划线 (-)。3. 容器名称中的所有字母都必须为小写。4. 容器名称必须介于 3 到 63 个字符。IMPOR
29、TANT:请注意,容器的名称必须始终为小写。如果你在容器名称中包括大写字母或以其他方式违反了容器命名规则,则可能会收到 400 错误(错误请求)。此示例演示如何创建一个容器(如果该容器不存在):/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.CloudBlobClientb
30、lobClient=storageAccount.CreateCloudBlobClient();/Retrieveareferencetoacontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(mycontainer);/Createthecontainerifitdoesntalreadyexist.container.CreateIfNotExists();默认情况下,新容器是专用容器,意思是必须指定存储访问密钥才能从该容器下载 blob。如果你要让容器中的文件可供所有人使用,则可以使用以下代码将容器
31、设置为公共容器:container.SetPermissions(newBlobContainerPermissionsPublicAccess=BlobContainerPublicAccessType.Blob);Internet 中的所有人都可以查看公共容器中的 blob,但是,仅在你具有相应的帐户访问密钥或共享的访问签名时,才能修改或删除它们。将 Blob 上载到容器中Azure Blob 存储支持块 Blob 和页 Blob。大多数情况下,推荐使用块 Blob。若要将文件上载到块 Blob,请获取容器引用,并使用它获取块 Blob 引用。获取 Blob 引用后,可以通过调用Uploa
32、dFromStream方法,将任何数据流上载到该 Blob。如果之前不存在 Blob,此操作将创建一个;如果存在 Blob,此操作将覆盖它。下面的示例演示了如何将 Blob 上载到容器中,并假定已创建容器。/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.CloudBlobC
33、lientblobClient=storageAccount.CreateCloudBlobClient();/Retrievereferencetoapreviouslycreatedcontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(mycontainer);/Retrievereferencetoablobnamedmyblob.CloudBlockBlobblockBlob=container.GetBlockBlobReference(myblob);/Createoroverwritethem
34、yblobblobwithcontentsfromalocalfile.using(varfileStream=System.IO.File.OpenRead(pathmyfile)blockBlob.UploadFromStream(fileStream);列出容器中的 Blob若要列出容器中的 Blob,首先需要获取容器引用。然后,您可以使用容器的ListBlobs方法来检索其中的 Blob 和/或目录。若要访问返回的IListBlobItem的丰富属性和方法,您必须将它转换到CloudBlockBlob、CloudPageBlob或CloudBlobDirectory对象。如果类型未知,
35、你可以使用类型检查来确定要将其转换为哪种类型。以下代码演示了如何检索和输出photos容器中每项的 URI:/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.CloudBlobClientblobClient=storageAccount.CreateCloudBlobCli
36、ent();/Retrievereferencetoapreviouslycreatedcontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(photos);/LoopoveritemswithinthecontainerandoutputthelengthandURI.foreach(IListBlobItemitemincontainer.ListBlobs(null,false)if(item.GetType()=typeof(CloudBlockBlob)CloudBlockBlobblob=(Cl
37、oudBlockBlob)item;Console.WriteLine(Blockbloboflength0:1,blob.Properties.Length,blob.Uri);elseif(item.GetType()=typeof(CloudPageBlob)CloudPageBlobpageBlob=(CloudPageBlob)item;Console.WriteLine(Pagebloboflength0:1,pageBlob.Properties.Length,pageBlob.Uri);elseif(item.GetType()=typeof(CloudBlobDirector
38、y)CloudBlobDirectorydirectory=(CloudBlobDirectory)item;Console.WriteLine(Directory:0,directory.Uri);如上所示,你可以命名 Blob,在其名称中包含路径信息。这将创建一个虚拟目录结构,你可以像传统文件系统一样组织和遍历。注意,该目录结构仅仅是虚拟的 - Blob 存储中唯一可用的资源是容器和 Blob。但是,存储空间客户端库提供CloudBlobDirectory对象来引用虚拟目录,并简化了以这种方式组织的 Blob 的使用过程。例如,考虑名为photos的容器中包含的下面一组块 Blob:pho
39、to1.jpg2010/architecture/description.txt2010/architecture/photo3.jpg2010/architecture/photo4.jpg2011/architecture/photo5.jpg2011/architecture/photo6.jpg2011/architecture/description.txt2011/photo7.jpg在photos容器上调用ListBlobs(如上面的示例所示)时,返回一个层次结构列表。它包含CloudBlobDirectory和CloudBlockBlob对象,分别表示容器中的目录和 Blob。
40、生成的输出如下所示:Directory:https:/Directory:https:/Blockbloboflength505623:https:/另外,也可以将ListBlobs方法的UseFlatBlobListing参数设置为true。在这种情况下,作为CloudBlockBlob对象返回容器中的每一个 Blob。对ListBlobs的调用返回一个平面列表,如下所示:/LoopoveritemswithinthecontainerandoutputthelengthandURI.foreach(IListBlobItemitemincontainer.ListBlobs(null,tr
41、ue).结果如下所示:Blockbloboflength4:https:/Blockbloboflength314618:https:/Blockbloboflength522713:https:/Blockbloboflength4:https:/Blockbloboflength419048:https:/Blockbloboflength506388:https:/Blockbloboflength399751:https:/Blockbloboflength505623:https:/下载 Blob若要下载 Blob,请首先检索 Blob 引用,然后调用DownloadToStream
42、方法。以下示例使用DownloadToStream方法将 Blob 内容传输到一个流对象,然后您可以将该对象保存到本地文件。/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.CloudBlobClientblobClient=storageAccount.CreateClou
43、dBlobClient();/Retrievereferencetoapreviouslycreatedcontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(mycontainer);/Retrievereferencetoablobnamedphoto1.jpg.CloudBlockBlobblockBlob=container.GetBlockBlobReference(photo1.jpg);/Saveblobcontentstoafile.using(varfileStream=System.IO.
44、File.OpenWrite(pathmyfile)blockBlob.DownloadToStream(fileStream);也可以使用DownloadToStream方法以文本字符串形式下载 Blob 的内容。/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.Cloud
45、BlobClientblobClient=storageAccount.CreateCloudBlobClient();/Retrievereferencetoapreviouslycreatedcontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(mycontainer);/Retrievereferencetoablobnamedmyblob.txtCloudBlockBlobblockBlob2=container.GetBlockBlobReference(myblob.txt);stringtex
46、t;using(varmemoryStream=newMemoryStream()blockBlob2.DownloadToStream(memoryStream);text=System.Text.Encoding.UTF8.GetString(memoryStream.ToArray();删除 Blob若要删除 Blob,首先要获取 Blob 引用,然后对其调用Delete方法。/Retrievestorageaccountfromconnectionstring.CloudStorageAccountstorageAccount=CloudStorageAccount.Parse(Clo
47、udConfigurationManager.GetSetting(StorageConnectionString);/Createtheblobclient.CloudBlobClientblobClient=storageAccount.CreateCloudBlobClient();/Retrievereferencetoapreviouslycreatedcontainer.CloudBlobContainercontainer=blobClient.GetContainerReference(mycontainer);/Retrievereferencetoablobnamedmyb
48、lob.txt.CloudBlockBlobblockBlob=container.GetBlockBlobReference(myblob.txt);/Deletetheblob.blockBlob.Delete();以异步方式列出页中的 Blob如果要列出大量 Blob,或需要控制一个列操作中返回的结果数,则可以结果页的方式列出 Blob。此示例显示如何以页面形式异步返回结果,这样就不会在等待返回大型结果集时阻止操作的执行。此示例演示平面 Blob 列表,但你也可以执行分层列表,只需将ListBlobsSegmentedAsync方法的useFlatBlobListing参数设置为fals
49、e即可。由于示例方法调用异步方法,因此必须以async关键字开头,且必须返回Task对象。为ListBlobsSegmentedAsync方法指定的 await 关键字将挂起示例方法的执行,直至列表任务完成。asyncpublicstaticTaskListBlobsSegmentedInFlatListing(CloudBlobContainercontainer)/Listblobstotheconsolewindow,withpaging.Console.WriteLine(Listblobsinpages:);inti=0;BlobContinuationTokencontinuationToken=null;BlobResultSegmentresultSegment=null;/CallListBlobsSegmentedAsyncandenumeratetheresultsegmentreturned,whilethecontinuationtokenisnon-null./Whenthe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吸氧护理的循证实践
- 《计算机网络基础与应用》Linux部分实训任务 教案 任务四 在系统间共享文件
- 味精提取工成果考核试卷含答案
- 2026年经纪合同与委托合同(1篇)
- 广告设计专业就业指南
- 2026年开公司投资合同(1篇)
- 钻石琢磨工诚信知识考核试卷含答案
- 女性职业规划核心指南
- 船员聘请协议书范本大全
- 2026年肉类批发合同(1篇)
- 严重过敏反应教学课件
- GB/T 17790-2025家用和类似用途空调器安装规范
- 医学肝硬化合并肝性脑病诱因案例分析课件
- 中国工会章程知识培训考试题带答案2025年
- 人工智能训练师三级理论考试题库
- 2025年二级建造师二建机电实务案例分析考前必背十页纸考点重点知识总结
- 产前筛查宣教课件
- 幼儿教师交际口语训练
- 肛裂的课件教学课件
- 中考协议书保过
- 公交公司公共卫生应急预案
评论
0/150
提交评论