MVC3 VB.NETアプリケーション。 mvc3アプリケーションのフォームに複数のファイルアップロードボックスがあります。 Request.Filesは、私が下の関数にブレークポイントを置いてそれを見ると3つのファイルを示します。問題は、カウンタをコーディングして、選択したケースを使用する以外の方法です。データベースの各列にファイル名を保存する方法所属しています...あなたが言うことができると思いますので、変数をオンザフライで割り当てることができますか?foreachループが正しい列にファイルをドロップするようにします。つまり、handoutFile1、handoutFile2、handoutFile3など... ....ループが終了するたびに、handoutfile1のファイル名を上書きします。ループ内にカウンタを投げ、カウンタの値に基づいてdbカラムを割り当てるために選択したケースを置くことを考えました。しかし、安い仕事のように見える。あなたは要求ごとにデータベーステーブルにファイルと名前を保存。
[HttpPost]
public ActionResult Index(IList<HttpPostedFileBase> postedFiles)
{
foreach (var file in postedFiles)
{
//
}
return View();
}
として、次のようなビュー内のパラメータで定義することができ、あなたのアクションでは
For Each File As String In Request.Files
Dim hpf As HttpPostedFileBase = TryCast(Request.Files(File), HttpPostedFileBase)
If hpf.ContentLength = 0 Then
Continue For
End If
Dim savedfileName As String = Path.Combine(AppDomain.CurrentDomain.BaseDirectory) + "\CourseHandouts\" + hpf.FileName
hpf.SaveAs(savedfileName)
_filename = hpf.FileName
courses.handoutFile1 = _filename
Next
各ループのために、各ファイル名を異なるデータベース列に保存する必要があるため、その上にダイスはありません。 – Skindeep2366