1

送信のクリックで複数のファイルを自分の 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 から来ているかを追跡したいと思います

ご協力いただきありがとうございます。

4

0 に答える 0