0

別のエンティティにも燃料タイプを保持している車のモデル エンティティがあります。それらは多対多の関係にあります。

コード:

public class CarModel
{
    public int Id { get; set; }
    public string Model { get; set; }

    public ICollection<CarFuel> Fuel { get; set; }
}

public class CarFuel
{
    public int Id { get; set; }
    public string FuelType { get; set; }

    public ICollection<CarModel> Model { get; set; }
}

int model = 2002; // this is coming from a selectbox

var models = (from m in db.CarModels where m.Id == model select m).ToList();
var fuels = (from e in db.CarFuels select e).ToList();
var result = fuels.Where(p => models.Any(q => q.Fuel == p)).ToList(); // this doesn't work because it is looking for primitive types rather than entitites.

したがって、特定のモデルの結果セットのみと関係があるタイプを提示する CarFuel のクエリを作成したいと思います。したがって、作成された CarModel の結果セットと関係のない CarFuel は表示したくありません。

4

1 に答える 1

2
var fuels  = db.CarFuels.Where(cf => cf.Model.Any(m => m.Id == model))
于 2012-12-30T14:00:33.177 に答える