我的模型总是空的,为什么?ASP.Net MVC

本文关键字:为什么 ASP Net MVC 模型 我的 | 更新日期: 2023-09-27 17:59:20

这是我的型号:

 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循环时发生错误。问题出在哪里?

我的模型总是空的,为什么?ASP.Net MVC

因为您没有初始化它

   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
     }