ASP.NET MVC如何将已连接的数据传递到视图中?

时间:2011-05-21 10:02:23

标签: asp.net-mvc-3

我的控制器中有以下代码:

public ViewResult Index()
{
    var q = from ci in db.City
            join co in db.Country on ci.CityID equals co.CityID
            select ci;
    return View(q);
}

数据库如下:

Table City: CityID, CityName
Table Country: CountryID, CountryName

在索引视图中如何显示CityName和CountryName:

@foreach (var item in Model) {
    @Html.DisplayFor(modelItem => item.CityName)

我无法显示CountryName :(

谢谢!

1 个答案:

答案 0 :(得分:5)

它不起作用,因为您只在查询中选择了城市。你需要选择两者。使用匿名对象是一种方式:

select new { City = ci, Country = co }

然后,您应该可以访问item.City.Citynameitem.Country.CountryName