次のコントローラー アクションに投稿します。
<EmployeeAuthorize()>
<HttpPost()>
Function SendNewMessage(ByVal files1 As HttpPostedFileBase, ByVal files2 As HttpPostedFileBase) As JsonResult
Debug.Print("files1=" + files1.ToString)
Debug.Print("files2=" + files2.ToString)
Dim result = New Dictionary(Of String, String)
Dim fileName = Path.GetFileName(files1.FileName)
Dim filePath = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName)
files1.SaveAs(filePath)
Dim fileName2 = Path.GetFileName(files2.FileName)
Dim filePath2 = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName)
files2.SaveAs(filePath)
Return Json(result)
End Function
" "Debug.Print("files2=" + files2.ToString)
という行にエラーが表示されます。NullReferenceException Object reference not set to an instance of an object.
これは私が使用しているビューです:
@Using Html.BeginForm("SendNewMessage", "Message", FormMethod.Post, New With {.id = "sendForm", .enctype="multipart/form-data"})
@<div class="sendBox">
<h2 style="margin: 10px 0 0 0;">Attachments:</h2>
<label>Attachment 1: <input type="file" name="files1" id="file1" class="files"/></label>
<label>Attachment 2: <input type="file" name="files2" id="file2" class="files"/></label>
<label>Attachment 3: <input type="file" name="files3" id="file3" class="files"/></label>
<input type="submit" value="Send" />
</div>
End Using
最初のファイルは問題ありません ( files1
)。複数のファイルをアップロードできないのはなぜですか?