コントローラからビジネスロジッククラスをできるだけ少なくするように、コントローラからビジネスロジッククラスを分離しました。しかし、私は同じdbcontext througoutをWebリクエストの生涯にわたって使いたいので、コンテキストをライブで持つentitesを渡せるようにするために、dbcontextをビジネスロジッククラスに渡しています。これらのクラスのほぼすべてのメソッドは受け入れますdbcontextをパラメータとして使用します。 (コンテキストが異なると、同じエンティティを生成するためにデータベースにクエリを実行する必要があります)dbcontextの再利用
この方法に問題はありますか? (同じコンテキストを使用し、それぞれのビジネスロジックメソッドのパラメータとして受け入れるという点で)
データアクセスレイヤーはすべてのDB固有のロジックを処理する方が良いでしょう.Business Logicは、コンテキストe.t.cのようなDB固有の詳細を知ってはいけません。コンテキストの存続期間は、IoCコンテナ(Singleton要求またはOne要求)を介して1つのコンテキストインスタンスを制御する方が適しています。 – Vladimir