这个代码有什么问题?我只是想练习将列表传递给我的观点:
控制器:
public ActionResult About()
{
List<string> ListofColors = new List<string>();
ViewBag.colors.Add("red");
ViewBag.colors.Add("green");
ViewBag.colors.Add("blue");
ViewBag.ListColors = ListofColors;
return View();
查看:
<ul id="colors">
@foreach (var colors in (List<string>) ViewBag.ListColors) {
<li>
@colors
</li>
}
</ul>
我得到的错误是:CS0103:当前上下文中不存在名称'colors'
答案 0 :(得分:2)
您没有在控制器操作中将ListColors
对象传递到您的viewbag:
....
ViewBag.ListColors = ListofColors;
return View();
....
答案 1 :(得分:1)
控制器代码中缺少该行。
ViewBag.ListColors = colors;
编辑::控制器中的代码如下所示
public ActionResult About()
{
List<string> ListofColors = new List<string>();
ListofColors.Add("red");
ListofColors.Add("green");
ListofColors.Add("blue");
ViewBag.ListColors = ListofColors;
return View();
}
这将解决您的问题。
答案 2 :(得分:1)
List<string> ListofColors = new List<string>();
ListofColors.Add("red");
ListofColors.Add("green");
ListofColors.Add("blue");
ViewBag.ListColors = ListofColors;
将颜色添加到列表中并将listofcolors传递给viewbag