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);
        }
    }
  • 相关阅读:
    Pytorch环境搭建(Anaconda+Pycharm,清华镜像源)
    Leetcode 220. 存在重复元素 III (Contains Duplicate III)
    Leetcode 217. 存在重复元素 (Contains Duplicate)
    Leetcode 219. 存在重复元素 II (Contains Duplicate II)
    Leetcode 1073. 负二进制数相加(Adding Two Negabinary Numbers)
    极客战记(codecombat)攻略-地牢-Kithgard 地牢
    python elasticsearch 深度分页——scroll的使用与清除(clear_scroll)
    sqlmap参数
    文件包含
    web安全
  • 原文地址:https://www.cnblogs.com/darrenji/p/3680558.html
Copyright © 2011-2022 走看看