質問: アプリケーションのDbContestのスコープがhttpリクエストであるとします。私が通常行う方法は、変更を加える必要があるすべてのメソッドであり、DbContextを介してロードされたオブジェクトに変更を加えるだけです。次に、httpリクエストの最後に`SaveChangesAsync`を呼び出して、変更トラッカーのすべての変更がトランザクションに一度に適用されるようにします。 ただし、その途中で別の保存を実行したい場合は-おそらくキャッシュされた値への更新です-変更トラッカーの他のすべてがライドに同行しないように保存を実行したいと思います。 「サブコンテキスト」またはネストされたコンテキストを作成する方法、またはそれを可能にする概念が呼び出されるものはありますか?
回答: あなたのケースでは、新しいスコープを作成し、そこでDbContextを解決できます ``` using (var scope = HttpContext.RequestServices.GetService().CreateScope()) using (var dbContext = scope.ServiceProvider.GetRequiredService()) { } ```