C#如何获取ViewBag的属性?

5
我理解到ViewBag是动态的,可以通过首次使用和初始化这些属性来“添加”新属性到ViewBag中而不会有编译问题。
然而,我正在寻找一种方法来获取已在ViewBag上初始化的所有属性。根据MSDN的说法,ViewBagControllerBase类中被声明为对象,并且似乎没有关于如何动态获取对象属性的方法。
也许可以使用反射,但我不知道该从哪里开始。
我想这样做的原因是我正在将一个巨大的网站从MVC转换为MVVM架构。为此,我希望编写测试用例以确保ViewBag未在任何地方使用,并且在运行控制器方法后未设置ViewBag的任何属性。
从哪里开始?
1个回答

6

请查看ViewData,它以字典的形式包含了ViewBag中的所有内容。


啊..你放入 ViewBag 的所有内容都会反映在同一控制器的 ViewData 中,因此你可以检查 ViewData(即 ViewData.Keys)。 - ltiong_sh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接