从MVC中的html表单获取上传的文件?

时间:2012-08-11 21:54:43

标签: html asp.net-mvc

我有一个非常大的形式的文件上传输入:

<input class="input-file" type="file" name="picture">

我正在使用:

public ActionResult Add(FormCollection form)

要获取其余的表单值,它在FormCollection中也会出现'picture',但它只有文件名而不是实际图片。我试过用这个:

public ActionResult Add(FormCollection form, HttpPostedFile picture)

这个

Request.Files[0]

这是我在其他SO问题上找到的解决方案,但两者都保持无效。

我认为该文件实际上已发布,因为它显示在FormCollection中。

我如何获得此文件?试图将其作为一个byte []保存在数据库中。

感谢。

1 个答案:

答案 0 :(得分:2)

我可以通过将表单的开头更改为:

来解决此问题
@using (Html.BeginForm("Add","Recipe",FormMethod.Post, new { enctype = "multipart/form-data" }))