| 我有以下 MVC2 视图,它使用视图模型进行强类型化,其中包含数据库表中的值列表,我需要在视图中显示第二个表中的单个值,这是我的视图代码
<%@ Page Title=\"\" Language=\"C#\" MasterPageFile=\"~/Views/Shared/Site.Master\"   Inherits=\"System.Web.Mvc.ViewPage \" %>


客户站点



<% foreach (var customerSite in Model.CustomerSites) { %>
<% Html.RenderPartial(\"CustomerSiteSummary\", customerSite); %>
<%} %>

这是视图模型,请注意,我在视图模型中包含了一个 Customer 成员,因为除了客户站点列表之外,我还想显示客户名称
命名空间 CustomerDatabase.WebUI.Models
{
公共类 CustomerSitesListViewModel
{
    公共 IList CustomerSites { 获取;放; }
    公共 PagingInfo PagingInfo { 获取;放; }
    公共客户客户{得到;放; }
}
}
这是我的视图控制器代码
 public ViewResult List([DefaultValue(1)] int page)
    {
        var customerSitesToShow = customerSiteRepository.CustomerSites;
        var viewModel = 新的 CustomerSitesListViewModel
        {
            CustomerSites = customerSitesToShow.Skip((页 - 1) * PageSize).Take(PageSize).ToList(),
            分页信息 = 新的分页信息
            {
                当前页=页,
                每页项目数=页面大小,TotalItems = customerSitesToShow.Count()
            }
        };

        返回视图(viewModel); //作为ViewData.Model(或简单的模型)传递给视图
    }
这是呈现列表的部分视图,
<%@ Control Language=\"C#\"    Inherits=\"System.Web.Mvc.ViewUserControl\" %>

<%:Model.customer.CustomerName%>

<%: Model.AddressLine1 %> <%: Model.AddressLine2%>
尽管智能感知让我可以从视图访问客户对象

<%:Model.customer.CustomerName%>

当我导航到视图时抛出错误, 你调用的对象是空的。 来源错误:
第 7 行:
8号线:<% foreach (var customerSite in Model.CustomerSites) { %>
9号线:<%:Model.customer.CustomerName%>
10号线:<% Html.RenderPartial(\"CustomerSiteSummary\", customerSite); %>
第 11 行:<%}
我认为错误是由于视图渲染列表造成的,我尝试将 viewmodel 成员更改为
公共IList{获取;放;}
但这也行不通。 任何人都可以建议我实现这一目标的方法,或者就我应该去哪里提供任何建议。难道这是我下班或者上网都解决不了的问题吗? ​​