asp.net-mvc - Azure 将 blob 下载到用户计算机

标签 asp.net-mvc azure

当我遇到一些问题时,我正在开发下载 blob 功能。

我希望用户能够下载 blob,并且当该项目下载到用户计算机时我希望该项目有一个特定的文件名。我还希望用户决定将该项目保存到哪个文件夹。

这是我到目前为止看起来不太好看的代码:

    var fileName = "tid.txt9c6b412a-270a-4f67-8e65-7ce2bf87503d";
    var containerName = "uploads";
    CloudStorageAccount account = CloudStorageAccount.DevelopmentStorageAccount;
    var blobClient = account.CreateCloudBlobClient();
    var container = blobClient.GetContainerReference(containerName);
    var blob = container.GetBlockBlobReference(fileName);
    using (var filestream = System.IO.File.OpenWrite(@"C:\Info\tid.txt9c6b412a-270a-4f67-8e65-7ce2bf87503d"))
    {
        blob.DownloadToStream(filestream);
    }

文件名 = blob 名称

可以改名字吗?文件结尾弄乱了我的指南。 目前下载到的文件夹是 C:\Info.. 当网站发布时,这将如何工作?如何让用户决定项目应保存到哪个文件夹?我这样做对吗?

提前谢谢你 /菲利普

最佳答案

How would this work when the website is published?

对用户来说很慢,对你来说却很昂贵。您正在通过应用程序传输 BLOB,因此您会遇到瓶颈。使用Shared Access Signatures并直接从浏览器下载 blob。使用 Content-Disposition 作为 URL 的一部分,让浏览器通过“另存为”对话框提示用户。请参阅Javascript download a URL - Azure Blob Storage .

关于asp.net-mvc - Azure 将 blob 下载到用户计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23575221/

相关文章:

c# - 密码哈希不匹配

.net - 如何从 ASP.NET Core 引用 .NET 框架

node.js - 有人成功使用 Azure AD 对 Node.js Web 应用程序的用户进行身份验证吗?

Azure函数存储文件未随函数一起删除

asp.net-mvc - ASP.NET MVC 1 与 MVC 3 中的 CRUD

c# - WCF 服务作为 MVC 应用程序的一部分

javascript - flow.js 点击上传文件

java - Azure表存储无效输入

javascript - Azure Durable Function (Node.JS) 错误 "Microsoft.Azure.WebJobs.Host: Can' t 将参数 'data' 绑定(bind)到类型 'System.String' 。”

mobile - 从命令行使用 Azure 移动服务进行测试