MVC使用Ajax.BeginForm上传图片时HttpPostedFileBase file为null,Request.Files获取不到文件,问题分析是页面中存在jquery.unobtrusive-ajax.js文件,注释后 能够获取到。改为Html.BeginForm实现如下:
1 2 3 4 5 6 |
@using (Html.BeginForm("UploadPhoto", "EditUserInfo", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
选择图片:
< input type = "file" name = "uploadFile" />
< input type = "submit" />
}
|
Controller:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
[HttpPost]
public ActionResult UploadPhoto(HttpPostedFileBase uploadFile)
{
if (uploadFile != null && uploadFile.ContentLength > 0)
{
string fileName = WebSecurity.CurrentUserId + Path.GetExtension(uploadFile.FileName)
string direction = Server.MapPath( "~/UpLoad/Companys/logo/" );
string destinationPath = Path.Combine(direction, fileName);
if (!Directory.Exists(direction))
{
Directory.CreateDirectory(direction);
}
uploadFile.SaveAs(destinationPath);
}
return View();
}
|
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有