0

私はMVC 4を使用しており、アップロードファイルの概念を試しました。

これが私のコードです:

<div class="complianceSubDiv">
  <div class="complianceLeftDiv">
    @Html.Label("Upload the file")
  </div>
  <div class="complianceRightDiv">
    <input type="file" id="file" name="file" />
  </div>
</div>

私のコントローラコードのような

[HttpPost]
public ActionResult ManageDocument(DocumentModel documentModel, HttpPostedFileBase file)
{
    //some code
}

しかし、HttpPostedFileBaseファイルは常に null を返します。私はStackOverflowや他のウェブサイトでより多くの回答を検索しましたが、変数名のパラメータ HttpPostedFileBaseとファイルアップロードコントロール名が同じであるという実用的な回答を得ました。だから私はすべての面に同じ名前を付けましたが、それは返すnullだけです。

誰でも私を助けてくれますか?

4

2 に答える 2

2

ついにできた

今、私は@using (Html.BeginForm())

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

それは働いている!

于 2013-05-16T07:29:02.740 に答える
0
    [HttpPost]
    public ActionResult FileUpload(HttpPostedFileBase myFile)
    {
        myFile = Request.Files["file"];
        if (myFile != null && myFile.ContentLength > 0)
        {
            // your code ....
        }
        return View();
    }

「Request.Files」を使用して、選択したファイルを取得できます。上記のコードです。

于 2017-01-02T21:16:13.377 に答える