在我的MVC应用程序中,我使用以下代码作为文件。
MODEL
public HttpPostedFileBase File { get; set; }
查看
@Html.TextBoxFor(m => m.File, new { type = "file" })
一切正常......提交价值但我试图从控制器模型加载文件无法正常工作
CONTROLLER
public ActionResult ManagePhotos(ManagePhoto model)
{
if(ModelState.IsValid)
{
//upload file
}
else
{
return View(model); //contains type HttpPostedFileBase File { get; set; }
}
}
如果我的验证在返回后失败,我怎么能再次加载文件输入,我的文件控件没有映射到模型到文件而且它是空的......
答案 0 :(得分:0)
如果您知道该文件有效,并希望暂时保留该文件,则可以将其保留在会话中(但请注意内存使用情况)。
如果您知道该文件有效,并希望永久保留该文件,请将其保存并将路径保留在内存中。
如果您知道该文件无效,您可能不想也不经常保留该文件。
在验证失败期间,这通常以与密码相同的方式处理 - 它需要再次提供,因此只有在其他一切都好的时候才会要求。
答案 1 :(得分:0)
如果您希望尽可能地无缝地获得用户体验,请尝试以下操作: