我想创建一个表单,用户可以在其中编辑个人资料并上传图像(如果需要),
这是我的观点
这是我的观点
//表单字符串@using(Html.BeginForm(“EditProfile”,“Employee”,FormMethod.Post,
new {enctype =“multipart / form-data”}))
//输入HTML< input type =“file”name =“file”id =“file”/>
//提交< input type =“submit”name =“SubmitBtn”value =“SaveProfile”/>
< input type =“submit”name =“SubmitBtn”value =“Cancel”/>
现在我的控制器
//Profile Modification [Authorize] [HttpPost] public ActionResult EditProfile(employer model,string SubmitBtn,HttpFileCollection file) { switch (SubmitBtn) { case "SaveProfile": try { if (ModelState.IsValid) { //the file is always null if (file != null) { //Function I want to Apply on file model.logoname = logouploded(file); return RedirectToAction("Profile","Employer"); } return RedirectToAction("EditProfile"); } //ChangeEmployeeProfile(model); } catch (Exception ex) { ViewBag.warn = ex.Message; return View(model); } break; case "Cancel": return RedirectToAction("index"); } return View(model); }
现在无论我上传的文件是什么文件总是空的
我还尝试了HttpFileCollectionBase作为Action函数中的参数仍然是文件为null
解决方法
将HttpFileCollection类型更改为
HttpPostedFileBase.
原文地址:https://www.jb51.cc/csharp/92824.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。