DB から多くのレコードをロードしようとしていますが、それらを並行して実行して速度を上げたいと考えています。
以下は、null である Applicants プロパティにアクセスしようとすると壊れるコードの例です。ただし、非並列ループでは、Applicants プロパティは設定されているか空のリストですが、null になることはありません。遅延読み込みは確実に有効になっています。
var testList = new List<string>();
Context.Jobs
.AsParallel()
.WithDegreeOfParallelism(5)
.ForAll(
x => testList.Add(x.Applicants.Count().ToString())
);
このようなことはできますか?エンティティ フレームワーク接続に関連していますか? 並列に使いやすくして、そのインスタンスをタスクなどに渡すことはできますか? 私はアイデアを出しているだけですが、実際には手がかりがありません。
編集:
この投稿は私と関係がありますか? 私の問題は似ているように聞こえます。Entity Framework の遅延読み込みが他のスレッドから機能しない