【发布时间】:2019-05-04 21:41:48
【问题描述】:
我正在学习有关 ASP.NET 中 ViewBags 的 MVC 教程。它从不涉及 ViewBag 的真正含义,它只是向您展示何时以及如何使用它。我遇到了下面的代码,它似乎在这个特定实例中将 ViewBag 视为一个数组,而我不认为它是一个数组。
@for(int i = 0; i <= ViewBag.Items; i++)
{
<li>ViewBag.Items[i]</li>
}
ViewBag 到底是什么?数据字典?收藏?数组?似乎它是我可以研究的字典,但我似乎找不到明确的答案,因为我找到的资源只是告诉你如何以及何时使用它。我看了一下这里,但信息非常稀少,对我来说并不完全清楚。
请注意,我的 C# 技能还不是很全面,虽然我有一个不错的一般理解。如何将其视为数组?
另外,为什么 for 循环中的 i
【问题讨论】:
-
这段代码运行正常吗?
-
原来是导师出错了,后来改成View,Items.Count,这样就更有意义了。糟糕的课程。像这样的错误真的可以通过像我这样的新手关闭。但是我还是不知道怎么把它当成一个数组来处理。
-
我阅读了提供的教程链接,它是一样的。它向您展示了如何使用它,但并没有真正解释它是什么。由于它是 DataView 的包装器,因此我认为它必须是字典。字典可以像数组一样使用吗?
-
正如我所说的 ViewBag 是一个
System.Dynamic.ExpandoObject,在你分享的例子中ViewBag没有用作array,实际上它的Items属性是一个array,我'已经为您创建了一个示例。 dotnetfiddle.net/ZyKGlM
标签: asp.net-mvc model-view-controller