迭代数组并与实体对象进行比较

时间:2012-11-16 21:50:44

标签: asp.net-mvc razor

我正在尝试在数据库对象的一对多关系中获取各种项目。所以我让实体框架创建我的位置对象,并且表中的一列具有逗号分隔的位置列表。我用:

var data = pubDB.Locations.Include("Branch_Ameneties");

在模型中获取两个表之间的关系。然后在视图中我试图遍历数组中的功能并获取相关的Branch Amenities:

@foreach (var Location in Model.LocationListings())
{
@if (Location.Features != null)
                {
                    string[] featureset = Location.Features.Split(',');
                    foreach (var item in featureset)
                    {
                        var feature = Location.Branch_Ameneties.Amenity.Where(x => Location.Branch_Ameneties.FID = Convert.ToInt32(item);
                        @feature
                    }
                }

我似乎无法将数组与amentiites的参考表联系起来。

1 个答案:

答案 0 :(得分:0)

而不是使用where子句,请尝试使用:

  var feature = Location.Branch_Ameneties.Amenity.Single(x => Location.Branch_Ameneties.FID == Convert.ToInt32(item));

另外,你有" .. FID = Convert.ToInt32(item)"而不是" .. FID == 转换......"