私はEFクエリで少しのパフォーマンス上の問題があります。問題は、私が集めることができるものから、これは最初にフェッチされるリスト全体を引き起こし、ということである最も効率的な方法でレイジーリストのカウントを取得するには?
Article a = ...;
vm.Count = a.Visits.Count;
:
public class Article
{
public int ID { get; set; }
public virtual List<Visit> Visits { get; set; }
}
public class Visit
{
public int? ArticleID { get; set; }
public DateTime Date { get; set; }
}
さて、私がやりたい:
私たちは、基本的にこれを持っています、そしてそれの数。これをループで実行すると、パフォーマンス上の問題が発生します。
オブジェクトが「あまりにも具体的」であると想定していたので、Visits.Count
コールをできるだけリポジトリに戻して移動しようとしました(つまり、私たちはDbContext )。それは役に立たなかった。
提案がありますか?
記事に「GetVisitsCount」を追加できますか? - あなたがそれを使用することにどれくらいの時間を要しているのか、数回だけであればパフォーマンスの問題はそれほどありませんので、私はかなり多くを推測しています。 – Sayse