はじめに 基本、自分用のメモです。 多層システムで構築されたウェブアプリケーションにおいて、DbContextやLoginInfoのようなリクエスト毎に生成・破棄し、全体で共有するオブジェクトを誰が生成し誰が破棄する責務をもつのか、またそれらを各オブジェクトがどこから取得するのかという問題を、DI(依存性オブジェクトの注入)を使って解決する、という記事になります。 既にDIを使い倒している方には今更な内容かと思いますが、私のように古いシステムのメンテナンスをしていた人には有用かと思います。 この記事をかいた理由 ASP.NETでDIコンテナ使ってDbContextを注入するサンプルをいくら検索しても、ControllerでDbContextを受け取っていきなりそこでDBにアクセスする初歩的な実装例しか出てこなくて、「コントローラでDB層にアクセスするとか、そんないい加減なシステムがあってた