我注意到在ASP.Net 5(核心)的所有示例和教程中我都看到了Microsoft和VS 2015中的默认Web应用程序模板@ViewData["XXX"]
而不是使用@ViewBag.XXX
.这是现在推荐的从控制器传递数据而不是ViewBag
?我知道这ViewBag
是一个包装,ViewData
但在他们使用的旧教程(ASP.NET 4.5)中ViewBag
.如果他们现在鼓励开发人员使用ViewData
为什么要改变?
两者仍然有效.docs.asp.net github项目没有具体的指导.虽然有关于docs.asp.net问题的讨论.
这与产品团队的评论相关联,该评论说:
"由于ViewData(字典)查找远远超出ViewBag(动态)调用,最后一个可能是最佳选择."
所以我认为它纯粹是一种基于ViewData表现更好的风格选择.