2016-12-09 8 views
0

が含まれます。私はこの質問をたくさん検索しましたが、答えは見つかりませんでした。今、私は結果が一定の臨床像と関連しているとclinicalPictureが含まれている全ての演習の集まりであるクエリを持ちたいEntity Frameworkのコア私はC#とEntity Frameworkのコアへの新たなんだフィルタ

public class Exercise 
{ 
    public int ExerciseId { get; set; } 

    [Required] 
    public string ExerciseName { get; set; } 

    public string Filename { get; set; } 

    public ICollection<ExerciseClinicalPicture> ExerciseClinicalPicture { get; set; } 
} 

public class ClinicalPicture 
{ 
    [Key] 
    public int ClinicalPictureId { get; set; } 

    [Required] 
    [Display(Name = "Krankheitsbild")] 
    public string ClinicalPictureName { get; set; } 

    public ICollection<ExerciseClinicalPicture> ExerciseClinicalPicture { get; set; } 
} 

public class ExerciseClinicalPicture 
{ 
    [Key] 
    public int ExerciseClinicalPictureId { get; set; } 

    public int ExerciseId { get; set; } 

    public Exercise Exercise { get; set; } 

    public int ClinicalPictureId { get; set; } 

    public ClinicalPicture ClinicalPicture { get; set; } 
} 

:私は、次の3つのモデルを(私はそれを単純化しています)があります。このような

何か:私はExerciseClinicalPictureのコレクションにClinicalPictureIdを呼び出すことはできませんので

int id = 1; 
exercises = _context.Exercise.Where(e => e.ExerciseClinicalPicture.ClinicalPictureId == id) 
.Include(m => m.ExerciseClinicalPicture) 
.ThenInclude(m => m.ClinicalPicture); 

このクエリはエラーをスローします。

は私の質問は、このようなOKであると思います。私がStackoverflowで質問をするのは初めてです。あなたの助けのための

どうもありがとう

答えて

2

変更この:これに

exercises = _context.Exercise.Where(e => e.ExerciseClinicalPicture.ClinicalPictureId == id) 

:基本的に

exercises = _context.Exercise.Where(e => e.ExerciseClinicalPicture.Any(ec => ec.ExerciseId == id)) 

、「運動の運動臨床像のいずれかが含まれている演習をゲット与えられた運動ID。 モデルでは、ExerciseClinicalPictureはコレクションです。もう一度それを掘り起こす必要があります。あなたのエラーは、それがコレクションなのでプロパティが存在しないということです。

そして、これはあなたがそれを照会したい方法です。それでは、通常どおりにあなたのインクルードを行うことができます。

+0

ありがとうございました。 ClinicalPictureで名前をフィルタリングするときにクエリを教えてもらえますか? –

+0

_context.Exercise.Where(e => e.ExerciseClinicalPicture.Any(ec => ec.ClinicalPicture.ClinicalPictureName == "Name")) –

+0

ありがとうございました。 –

関連する問題