Webサイトにアップロードされ、Azureに保存されているファイルのファイル名とファイルサイズを返すことができないという問題があります。コントローラ。MVC - AzureからCSHTMLでファイル属性を返すhttppost
私CSHTMLのスニペットは次のようになります。あなたが見ることができるように
<table class="table table-striped table-hover ">
<thead>
<tr>
<th>FIlename</th>
<th>Modified</th>
<th>File Size</th>
<th>Download File</th>
<th>Delete File</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@item.Name</td>
<td>Modified</td>
<td>@item.ContentLength</td>
<td><a id="@item" href="@item" onclick="downloadFile('@item')">Download</a></td>
<td><a id="@item" href="#" onclick="deleteFile('@item')">Delete</a></td>
</tr>
}
</tbody>
</table>
、私はitem.Nameを持っているが、私は私が試したことの全ての下にまとめます他の多くを試みました。ファイルを完全にダウンロードして削除することができます。私のコントローラの
私の最も重要な部分は、次のとおりです。
public class HomeController : Controller
{
BlobStorageService _blobStorageService = new BlobStorageService();
public ActionResult Upload()
{
CloudBlobContainer blobContainer = _blobStorageService.GetCloudBlobContainer();
List<string> blobs = new List<string>();
foreach (var blobItem in blobContainer.ListBlobs())
{
blobs.Add(blobItem.Uri.ToString());
}
return View(blobs);
}
[HttpPost]
public ActionResult Upload(HttpPostedFileBase file)
{
if (file.ContentLength > 0)
{
CloudBlobContainer blobContainer = _blobStorageService.GetCloudBlobContainer();
CloudBlockBlob blob = blobContainer.GetBlockBlobReference(file.FileName);
blob.UploadFromStream(file.InputStream);
}
return RedirectToAction("Upload");
}
あなたが見ることができるように、ファイルサイズとファイル名ですん。ContentLengthはにHomeControllerコンテキスト内に存在します。
私はそれがitem.FileName、@ item.file.FileName、@ item.HttpPostedFileBase.Filename @ file.FileName、@ item.filename @
を作業得るために、以下の様々な例を試してみました - 他の人はすべて同じです。
そのモジュールのドキュメントを持っているあなたは答えを知っている場合、あなたは私にあなたがそれを見つけた場所のソースを伝えることができ、私はPythonでの作業に慣れているが、これは非常に異なっている
だから私はFileDisplayと呼ばれる新しいモデルを作成する必要がありますか? – user3019191
はい、コントローラにViewModelを作成して塗りつぶしてから、Viewをレンダリングします。 –