文件上传导致ASP.NET MVC中的模型状态无效

发光的

一直在尝试实现具有多个文件的文件上传器,但我一直收到无效信息ModelState这是我的代码(只是要点)

ViewModel:

public IEnumerable<HttpPostedFileBase> files { get; set; }

view.cshtml:

@model ITManagement.ViewModels.AssetViewModel

@using (Html.BeginForm(new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
    <h4>Asset</h4>
    <hr />
.
. The rest of the form is located here
. 
.
    <div class="form-group">
        @Html.LabelFor(viewModel => viewModel.objectModel.documentInfo.documents.fileContent, htmlAttributes: new {@class = "control-label col-md-2" } )
        <div class="col-md-2">
            <input class="single-line" [email protected](viewModel => viewModel.files)
                   [email protected](viewModel => viewModel.files)
                   type="file" multiple="multiple" />
        </div>
    </div>

控制器:

    [Route("create", Name = AssetsControllerRoute.Create)]
    public ActionResult create()
    {
        AssetViewModel evm = new AssetViewModel();
        return View(evm);
    }

    // POST: Assets/Create
    [HttpPost]
    [ValidateAntiForgeryToken]
    [Route("create")]
    public ActionResult create(AssetViewModel asset)
    {
        if (ModelState.IsValid)
        {
            erepo.add(asset.objectModel);
            return RedirectToAction("Index");
        }

        return View(asset);
    }

我已经遇到了这个问题,然后又遇到了这个错误和答案,但是我仍然缺少一些东西。files当我上传文件并提交表单时,变量为空。Request.Files在搜索中确实看到了using ,但是尝试绑定到IEnumerable<HttpPostedFileBase>和使用之间有什么区别Request.Files

这是无效的ModelState的原因:

“从类型'System.String'到类型'System.Web.HttpPostedFileBase'的参数转换失败,因为没有类型转换器可以在这些类型之间进行转换。”

发光的

我弄错的一段代码是这样的

@using (Html.BeginForm(new { enctype = "multipart/form-data" }))

这应该是

@using (Html.BeginForm("create", "assets", FormMethod.Post, new { enctype = "multipart/form-data" }))

“创建”代表控制器动作,“资产”代表控制器名称。我给了这三个参数,一切都很好。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

文件上传导致ASP.NET MVC中的模型状态无效

来自分类Dev

Asp.Net MVC C# 更新/编辑用户模型状态无效

来自分类Dev

Spring MVC Ajax文件上传导致415(不支持的媒体类型)

来自分类Dev

Asp.Net MVC 5模型状态

来自分类Dev

提交表单后如何显示加载图标,但如果模型在ASP .NET MVC中无效,则如何显示

来自分类Dev

在ASP.NET MVC 6中上传文件

来自分类Dev

ASP.NET MVC中的文件上传控件

来自分类Dev

使用ASP.NET MVC上传多个文件/文件路径

来自分类Dev

ExtJS文件上传到ASP.net MVC状态正常,但没有内容正在发送

来自分类Dev

模型ASP.Net MVC中的渲染模型

来自分类Dev

上传和查看文件ASP.NET MVC 5

来自分类Dev

Asp.net MVC:上传多个图像文件?

来自分类Dev

在ASP.NET MVC中上传多个文件

来自分类Dev

在MVC ASP.NET中上传多个文件

来自分类Dev

上传和查看文件ASP.NET MVC 5

来自分类Dev

ASP.NET MVC 4的上传文件问题

来自分类Dev

如何上传多个大文件ASP.Net MVC

来自分类Dev

更改上传的文件名asp.net mvc

来自分类Dev

文件上传 ASP.NET MVC 以多次提交形式

来自分类Dev

将文件上传到ASP.Net中的Dropbox

来自分类Dev

ASP.NET Core 2 razor 页面中的文件上传

来自分类Dev

多个文件上传导致5个空的上传文件

来自分类Dev

处理ASP.NET MVC中缺少的/无效的AntiForgeryToken

来自分类Dev

处理ASP.NET MVC中缺少/无效的AntiForgeryTokens

来自分类Dev

“值'emailaddress'无效”在asp.net mvc中验证失败

来自分类Dev

如何在ASP.NET MVC中处理HTML5多文件上传?

来自分类Dev

在ASP.NET MVC中以编程方式验证模型列表

来自分类Dev

在ASP.NET MVC4中获取模型的QueryString

来自分类Dev

javascript asp .net mvc razor中的访问模型

Related 相关文章

热门标签

归档