0

このコードのどこが間違っていますか? ビューにリストを渡す練習をしようとしています:

コントローラ:

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' は現在のコンテキストに存在しません

4

3 に答える 3

2

ListColorsコントローラのアクションで、オブジェクトをビューバッグに渡していない:

 ....
 ViewBag.ListColors = ListofColors;
 return View();
 ....
于 2013-03-01T17:04:12.110 に答える
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();
}

これで問題が解決します。

于 2013-03-01T17:04:19.513 に答える