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);
        }
    }
  • 相关阅读:
    复杂数据结构(二)树
    复杂数据结构(一)树
    简单数据结构(五)串和数组
    简单数据结构(四)栈和队列的简单应用
    简单数据结构(三)栈
    非零环绕
    canvas裁剪
    canvas图层
    canvas阴影与渐变
    canvas图形变换
  • 原文地址:https://www.cnblogs.com/darrenji/p/3680558.html
Copyright © 2011-2022 走看看