送信のクリックで複数のファイルを自分の Web サイトにアップロードしたいと考えています。
私はこれを部分的に達成することができました。Web サイトに複数のファイルがアップロードされています。しかし、問題は、同じコントローラーを使用して、異なるファイルのアップロードで異なる場所にファイルをアップロードすることです
例えば
<form name="upload" id="upload" action="~/Home/MultiUpload" method="post" enctype="multipart/form-data">
<label>Filename: <input type="file" name="file1" /></label>
<label>Filename: <input type="file" name="file2" /></label>
<label>Filename: <input type="file" name="file3" /></label>
<input type="submit" value="Submit" />
</form>
上記のコードから、file1 はファイルを ~/App_Data/Uploads1 に、file2 は ~/App_Data/Uploads2 に、file3 は ~/App_Data/Uploads3 にアップロードします。
これは、ファイルを保存しようとするコントローラーの私のコードです
Function MultiUpload(file As List(Of HttpPostedFileBase)) As ActionResult
If (Not IsNothing(file)) Then
For Each item As HttpPostedFileBase In file
Dim filePath = IO.Path.Combine(Server.MapPath("~/App_Data/Uploads"), IO.Path.GetFileName(item.FileName))
item.SaveAs(filePath)
Next
End If
Return RedirectToAction("Index")
End Function
前述のとおり、すべてのファイルが同じ場所にファイルをアップロードしています。
別の場所へのアップロードがどういうわけか不可能な場合、少なくともどのファイル名がどの FileUpload から来ているかを追跡したいと思います
ご協力いただきありがとうございます。