「window azure cloud service」を使用して、このような azure blob ファイルをアップロード/ダウンロードするアプリケーションを作成しました
コードのアップロード
public ActionResult UploadImage_post(HttpPostedFileBase fileBase)
{
if (fileBase.ContentLength > 0)
{
Microsoft.WindowsAzure.StorageClient.CloudBlobContainer blobContainer =
_myBlobStorageService.GetCloudBlobContainer();
Microsoft.WindowsAzure.StorageClient.CloudBlob blob =
blobContainer.GetBlobReference(fileBase.FileName);
blob.UploadFromStream(fileBase.InputStream);
}
return RedirectToAction("UploadImage");
}
コードをダウンロード
Microsoft.WindowsAzure.StorageClient.CloudBlobContainer blobContainer =
_myBlobStorageService.GetCloudBlobContainer();
Microsoft.WindowsAzure.StorageClient.CloudBlob blob =
blobContainer.GetBlobReference(filename);
return Redirect(blobContainer.GetBlobReference(filename).Uri.AbsoluteUri);
これが私の見解です
@foreach (var item in Model)
{
<img src="@item" width="200" height="100" />
<a href="/Blob/Download?filename=@item">Download</a>
}
状況は、ユーザーのダウンロード制限を設定しているため、「ダウンロード制限」に達しているかどうかを確認できるように、ダウンロードする前にファイルサイズを取得する必要があります。
「Data Left」フィールドがあることがわかります。別のファイルをダウンロードする前に、次のことを確認する必要があります
Downloaded File size > Data Left
その後、ダウンロードする必要はありません。
提案してください