0

これは私のモデルです:

 public class Stages
  {
      public int Id { get; set; }
      public string Code { get; set; }
      public string Name { get; set; }
      public string Des { get; set; }
      public string View_Count { get; set; }
  }

私のコントローラー:

 public ActionResult ViewStages()
    {
        return View();
    }

そして私の見解:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" 

Inherits="System.Web.Mvc.ViewPage<IEnumerable<Project.Models.Stages>>" %>

//Some Code...

<% foreach (var item in Model)
       { %>
    <tr>
        <td>
            <%: Html.DisplayFor(modelItem => item.Code)%>
        </td>
        <td>
            <%: Html.DisplayFor(modelItem => item.Name)%>
        </td>
        <td>
            <%: Html.DisplayFor(modelItem => item.Des)%>
        </td>
        <td>
            <%: Html.DisplayFor(modelItem => item.View_Count)%>
        </td>
        <td>
            <%: Html.ActionLink("Edit", "Edit", new { id = item.Id })%> |
            <%: Html.ActionLink("Details", "Details", new { id = item.Id })%> |
            <%: Html.ActionLink("Delete", "Delete", new { id = item.Id })%>
        </td>
    </tr>
<% }%>

</table>

</asp:Content>

そして、私はいつもこのエラーを受け取ります:オブジェクト参照がオブジェクトのインスタンスに設定されていません。foreachループに到達するとエラーが発生しました。何が問題ですか?

4

1 に答える 1

2

初期化してないから

   public ActionResult ViewStages()
   {
        //this initialize your model
        var viewModel=new List<Stages>()       
                          {
                              new Stages()
                                  {
                                      Id = 1,
                                      Code = "any code",
                                      //etc
                                  }
                          }; 
        return View(viewModel);   //you have to pass the model to the view
     }
于 2013-02-15T11:31:12.067 に答える