Я создал учетную запись хранения в Azure для загрузки файлов в.Я использую асинхронный виджет загрузки KenoUI, который позволяет загружать несколько файлов.Я хотел бы, чтобы система создала контейнер на основе передаваемого параметра Id
, если он еще не существует.
Я борюсь с фактической частью загрузки, однако, я 'Я не уверен, как передать перечисляемые файлы в учетную запись хранения.Вот мой код:
public ActionResult Async_Save(IEnumerable<HttpPostedFileBase> files, string id)
{
//Connect to Azure
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("my_AzureStorageConnectionString"));
//Create Blob Client
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
//Retrieve a reference to a container
CloudBlobContainer blobContainer = blobClient.GetContainerReference("vehicle_" + id);
try
{
// Create the container if it doesn't already exist
blobContainer.CreateIfNotExists();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.InnerException);
}
foreach (var file in files)
{
//This doesn't seem right to me and it's where I'm struggling
var fileName = Path.GetFileName(file.FileName);
var physicalPath = Path.Combine(blobContainer, fileName);
file.SaveAs(physicalPath);
}
// Return an empty string to signify success
return Content("");
}
Я пытался создать метод, который подключается к моей учетной записи хранения Azure и:
- Проверьте наличиеКонтейнер с тем же идентификатором, что и переданный параметр, если он не существует, создайте его.
- Загрузите файлы в существующий или вновь созданный каталог и присвойте им префикс идентификатора, т.е._ ".