0

asp .net mvc アプリケーションでファイルをアップロードしたいと考えています。アップロード自体は簡単ですが、他の詳細も含めてアップロードしたいです。実際、私はプロジェクト管理用のツールに取り組んでいます。すべてのファイルはタスクに対応している必要があります。つまり、すべてのユーザーは自分の 1 つのタスクに対応するファイルをアップロードできます。だから、タスクのIDでファイルをアップロードしてから、ファイルの名前とタスクのIDをデータベースに保存したいだけです。タスクのドロップダウン リストが必要です。

4

1 に答える 1

3

私の理解では、他の詳細を含むファイルをアップロードしたいと考えています。最初に、アップロードされたファイルをキャプチャするためのビュー モデルとHttpPostedFileBase、その他の詳細をキャプチャするためのその他のプロパティの作成を開始する必要があります。

public class UploadFileViewModel
{
   public HttpPostedFileBase File { get; set; }

   public int TaskId { get; set; }

   // other properties if any
}

UploadFileViewModel基本的に、 as パラメータを持つアクションが必要です。

public ActionResult UploadFile(UploadFileViewModel model)
{
   ...
}

検証を簡単に適用できるため、ビューモデルを使用することをお勧めします。ビューモデルがなくても、このようなことを実際に行うことができます。

public ActionResult UploadFile(HttpPostedFileBase file, int taskId)
{
  ...
}

あなたのビューは次のようになります。

@model UploadFileViewModel

@using (Html.BeginForm("UploadFile", "Controller", FormMethod.Post, new { enctype = "multipart/form-data" }))
{

<div>
   <input type="file" name="file" />

   @Html.DropDownListFor() @* list the tasks *@

   <input type="submit" value="OK" />
</div>

}

ファイルのアップロードについて詳しく知りたい場合は、このブログ投稿を確認してください。

于 2012-08-27T11:13:38.650 に答える