asp.net – 为什么IFormFile显示为null,我该如何解决?
发布时间:2020-12-16 00:20:03 所属栏目:asp.Net 来源:网络整理
导读:我在VS 2015中使用ASP.NET 5,MVC 6.我正在制作一个Web应用程序.在我的表格上我有: form method="post" enctype="multipart/form-data" div id="uploadSection" label Select files for upload/label input type="file" id="fileSelect" name="fileSelect" m
我在VS 2015中使用ASP.NET 5,MVC 6.我正在制作一个Web应用程序.在我的表格上我有:
<form method="post" enctype="multipart/form-data"> <div id="uploadSection" > <label >Select files for upload</label> <input type="file" id="fileSelect" name="fileSelect" multiple /> </div> <div> <input type="submit" id="thisbutton" value="button" /> </div> </form> 在我的控制器中: [HttpPost] public async Task<IActionResult> FileForm(FileViewModel vm,IFormFile file) { if (ModelState.IsValid) { //IFormFileCollection files = Request.Form.Files; string filePath = Path.Combine("C:","transfers"); //foreach (var file in files) //{ if (file != null && file.Length > 0) { var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"'); await file.SaveAsAsync(Path.Combine(filePath,fileName)); } //} ModelState.Clear(); } return View(); } 我有一个更大的表单,其中有母表单字段进入我的FormViewModel(所有字段都填充它们应该),我实际上尝试将IFormFileCollection,ICollection,IList,List作为上述方法中的参数,而是也直接把它放在我的视图模型中.无论我是作为单个文件还是多个文件,在模型或控制器中,我总是得到null. 而且,更好的是,我用fiddler多次运行它,它实际上是POST文件 – 所以为什么不将它们投射到模型中? 我的依赖关系错了吗?谁能想到可能导致这种情况的原因? "dependencies": { "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final","Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final","Microsoft.AspNet.Mvc": "6.0.0-rc1-final","Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final","Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final","Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final","Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final","Microsoft.AspNet.Http": "1.0.0-rc1-final","Microsoft.Extensions.Configuration.FileProviderExtensions" : "1.0.0-rc1-final","Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final","Microsoft.Extensions.Logging": "1.0.0-rc1-final","Microsoft.Extensions.Logging.Console": "1.0.0-rc1-final","Microsoft.Extensions.Logging.Debug": "1.0.0-rc1-final","Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-rc1-final" }, 解决方法
您的文件输入的名称属性为“fileSelect”.您的操作参数的名称是“file”.让它们匹配,它应该工作.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 用于.NET的HTML到RTF转换器
- asp.net-mvc – Asp.net Mvc 2.0 RC设置线程CurrentCulture
- asp-classic – ASP经典CDO电子邮件消息在textbody中使用UT
- iis-7.5 – IIS 7.5 Siteminder不保护ASP.net MVC请求
- asp.net – 如何绑定gridview中数据表的复选框值
- 如何确定ASP.NET应用程序域的生命周期
- asp.net – 替换web.config变换中的IIS重写规则
- asp.net-mvc-3 – 将原始html转储到Telerik网格
- asp.net – 使用Azure redis.cache跨负载均衡服务存储MVC应
- asp.net-mvc – 实体框架包含OrderBy随机生成重复数据
推荐文章
站长推荐
- asp.net – TransactionScope是否需要DTC服务?
- asp.net – 在IIS中将WebAPI添加为子/嵌套应用程
- asp.net – 我们可以在网页中使用多种形式吗?
- asp.net-mvc-3 – 另一个数据库实例RavenDB MVC3
- asp.net-mvc – 缓存直到ASP.NET MVC和Entity Fr
- asp.net-mvc-3 – 如何在Razor中为Nullable创建编
- asp.net-mvc – 在ASP.NET Intranet MVC应用程序
- ASP.NET Core去掉HTTPS配置和SSL证书
- 【DevExpress v17.2新功能预告】增强ASP.NET Gri
- asp.net-mvc-3 – ASP.Net MVC 3,Ninject和Quart
热点阅读