MVC ViewData与ViewBag的区别

一、ViewData

  1、ViewData派生自ViewDataDictionary,所以它具有字典的属性,例如:ContainsKey 、Add 、Remove 和 Clear ;

  2、字典键值是字符串类型,所以可以带空格,例如ViewData["a  b"];

  3、在视图中,只有string类型的值才能直接使用,其他的必须强制转换;

二、ViewBag

  1、ViewBag派生自 DynamicViewData,所以它可以使用' '.'用法(ViewBag.A="张三"),它是动态类型,不用强制转换;

  2、ViewBag 的语法使添加到控制器和视图的速度更快;

  3、更易于检查 NULL 值。 示例: @ViewBag.Person?.Name;

posted @ 2019-02-07 16:48 IJustWannRun 阅读(...) 评论(...) 编辑 收藏