0

モデルから foreach ループを介して Razor ビューに各要素を表示したいのですが、アプリケーションを実行するとコントローラーにコードがありません。エラーが発生します。

オブジェクト参照がオブジェクトのインスタンスに設定されていません

ビューにコードを書きました。

@model IEnumerable<Models.Web.Category>   

@foreach(var item in Model){  
   @item.CategoryName    
}

私のコントローラーは

public ActionResult Category(){

    return View();

}
4

3 に答える 3

1

私はこのようなことを意味します:

public ActionResult Category(){

    var categories = db.Categories;

    return View(categories);

}

また

 public ActionResult Category(){

    List<Category> categories = new List<Category>();
    categories.Add(new Category() { ID = 1, Name = "Bikes" });
    categories.Add(new Category() { ID = 2, Name = "Cars" });
    categories.Add(new Category() { ID = 3, Name = "Trucks" });

    return View(categories);

}

コントローラーでモデルを初期化する必要があります...

于 2013-05-22T15:30:29.347 に答える
0

あなたのビューが期待していることを見てくださいModel

@model IEnumerable<Models.Web.Category>

コントローラーでは、ビューに何も渡していないため、ビューはnullモデルとして持っています。コレクションを作成IEnumerable<Category>してビューに渡す必要があります。

于 2013-05-22T15:31:51.503 に答える