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);
        }
    }
  • 相关阅读:
    一题多解 —— 同时找到序列的最大值最小值
    中位数与顺序统计量
    软件开发 —— 极限编程(XP:Extreme Programming)
    一题多解 —— 二项式分布的期望和方差的计算
    C++中explicit关键字用法
    【联系】二项分布的对数似然函数与交叉熵(cross entropy)损失函数
    随机变量统计独立性的相关证明
    PowerShell管理SCOM_批量设置维护模式(下)
    导出AD用户所属组,查询AD用户(aduser)
    SQL脚本运行
  • 原文地址:https://www.cnblogs.com/darrenji/p/3680558.html
Copyright © 2011-2022 走看看