gpt4 book ai didi

azure - Azure 存储文件共享上已存在指定的共享

转载 作者:行者123 更新时间:2023-12-03 05:21:09 25 4
gpt4 key购买 nike

我正在使用“Azure 存储文件共享”存储我们网站上的一些文件,但失败并显示错误消息“指定的共享已存在”。我已经更改了正在上传的文件,但错误仍然存​​在。这是我的代码

        public static void Test2Upload()
{
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
string connectionString = "DefaultEndpointsProtocol=https;AccountName=xxxxx;AccountKey=xxxxx;EndpointSuffix=core.windows.net";
string shareName = "myapp-dev";
string dirName = "files";
string fileName = "catto.jpg";

// Path to the local file to upload
string localFilePath = @"d:\temp\two.jpg";

// Get a reference to a share and then create it
ShareClient share = new ShareClient(connectionString, shareName);
share.Create();

// Get a reference to a directory and create it
ShareDirectoryClient directory = share.GetDirectoryClient(dirName);
directory.Create();

// Get a reference to a file and upload it
ShareFileClient file = directory.GetFileClient(fileName);
using (FileStream stream = File.OpenRead(localFilePath))
{
file.Create(stream.Length);
file.UploadRange(
new HttpRange(0, stream.Length),
stream);
}
}

看起来我不应该多次创建同名的 ShareClient。那么如何查看和使用呢?

最重要的问题是,为什么文件还没有上传(即使我重命名了 ShareClient 对象)?

最佳答案

Looks like I should not create ShareClient with same name severaltimes. Then how to check and use it?

您可以使用ShareClient.CreateIfNotExists而不是 ShareClient.Create 方法。前者将尝试创建共享,但如果共享已存在,则不会更改。

您还可以使用ShareClient.Exists检查共享是否存在,然后使用 ShareClient.Create 创建它(如果不存在)。但不建议这样做,因为如果多个用户同时执行该代码,它可能不起作用。此外,您将进行 2 次网络调用 - 首先检查共享是否存在,然后第二次创建它。

The most important question is, why the file still not yet uploaded(even if I rename the ShareClient object)?

您上传文件的代码对我来说看起来没问题。您在该代码中遇到任何错误吗?

关于azure - Azure 存储文件共享上已存在指定的共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72276637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com