【发布时间】:2009-12-31 13:04:43
【问题描述】:
在一个 MVC 项目中,我试图创建一个视图,该视图具有父表中的标题以及其相关子表中的后续列表。
我使用实体框架将表拉入项目,并在控制器命名空间中创建了以下视图模型:
public class ServicesViewModel
{
public ServicesViewModel(List<ServiceGroup> servicegroups, List<Service> services)
{
this.ServiceGroups = servicegroups;
this.Service = services;
}
public List<ServiceGroup> ServiceGroups { get; set; }
public List<Service> Service { get; set; }
}
然后在控制器 Actionresult 中我这样做了:
public ActionResult Index()
{
var servicegroups = _db.ServiceGroupSet.ToList();
var services = _db.ServiceSet.ToList();
return View(new ServicesViewModel(servicegroups,services));
}
..在视图中这样做了:
" %>其他html代码等。
<% foreach (var m in Model.ServiceGroups) { %>
<strong><ul> <%= m.ServiceGroupName %></ul></strong>
<% foreach (var item in Model.Service) { %>
<li> <%= item.ServiceDescription %></li>
<% } %>
<% } %>
一切正常,但运行每个父记录的所有子记录。我还没有想出如何将过滤的参数放入视图中。
我在控制器中尝试了 linq 查询,但似乎无法在智能感知中找到外键字段。
【问题讨论】:
标签: asp.net asp.net-mvc entity-framework view controller