私は製品を持っていますが、この製品は言語ごとにいくつかの説明を持つことができます。エンティティフレームワークLinq Include()は条件付きでネストされています
product.Reference
とに基づいておりますが、言語コードと一致する商品と説明があります。私はEFコア2.0を使用しています
私は2つの分離されたクエリでそれを行うことができますが、可能であれば私は1つを望みます。
var product = _context.Products
.Where(x => x.Reference == "3265709")
.Include(x => x.ProductDescriptions)
.ThenInclude(x => x.Where(lg => lg.Language.Code == "EN").Select(z => z.Language))
.ToList();
任意のアイデア:
は、私はこれを試してみましたか?おかげで、
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Reference { get; set; }
public ICollection<ProductDescription> ProductDescriptions{ get; set; }
}
public class ProductDescription
{
public int Id { get; set; }
public string Short { get; set; }
public string Complete { get; set; }
public Language Language{ get; set; }
public Product Product { get; set; }
}
public class Language
{
public int Id { get; set; }
public string Code { get; set; }
public string Name { get; set; }
}
使用した2つのクエリを投稿できますか? –
私は2つのクエリでそれをどうしているのか見ていますが、まだしていません。私は最初に一つの質問をしたいと思います。 –
あなたの質問はクリスタルではありません(少なくとも私に)。 2つのクエリのソリューションを表示すると、他のユーザーが必要とするものを正確に理解するのに役立ちます。 –