zoukankan      html  css  js  c++  java
  • 报错:具有键"..."的ViewData项属于类型"...",但它必须属于类型"IEnumerable<SelectListItem>"

    报错:具有键"..."的ViewData项属于类型"...",但它必须属于类型"IEnumerable<SelectListItem>"

     

    □ 背景分析

    MVC控制器中有2个方法,一个是用来显示添加视图,另一个是用来接收添加数据。

    public ActionResult Add()
    {
        ViewData["o"] = 类型为List<SelectListItem>的集合实例;
        return View();
    }
     
    [HttpPost]
    public ActionResult Add(SomeViewModel model)
    {
        if(ModelState.IsValid)
        {
            //TO DO
        }
        else
        {
            return View(model);
        }
    }

     

    □ 解决方法

    控制器方法Add()在接收视图传来的view model,在验证失败的情况下,返回到显示添加的视图,这时,同样需要把类型为List<SelectListItem>的集合实例传递到前台视图。正确的写法是:

    [HttpPost]
    public ActionResult Add(SomeViewModel model)
    {
        if(ModelState.IsValid)
        {
            //TO DO
        }
        else
        {
            ViewData["o"] = 类型为List<SelectListItem>的集合实例;
            return View(model);
        }
    }
  • 相关阅读:
    面试算法爱好者书籍/OJ推荐
    go语言——数据类型
    go编程规范
    Go语言常见语法错误
    go语言入门
    python——itertools
    linux sed使用
    python——optparse模块
    Linux基本配置
    文件包含
  • 原文地址:https://www.cnblogs.com/darrenji/p/3680558.html
Copyright © 2011-2022 走看看