Web API、.Net Core、およびEntityFramework Coreを使用してサービスアプリケーションを構築しています。 Startup.csに「ConfigureServices」の方法で、私はこれらの行を使用しています私のDbContextのオプションを設定するためのエンティティフレームワークコアDbContextと依存性注入
は
var connection = @"Server=ISSQLDEV;Database=EventManagement;Trusted_Connection=True;";
services.AddDbContext<EMContext>(options => options.UseSqlServer(connection));
私が知っている私は、コントローラ内のコンストラクタのパラメータとしてコンテキストを追加する場合、.NETということコンストラクタにコンテキストを挿入します。
しかし、これは私が望む動作ではありません。私は自分のWeb APIにdbcontextについて何も知らせたくありません。すべてのCRUD操作を処理するリポジトリクラスを持つDataAccessプロジェクトがあります。
これは私のコントローラにRepository.AddEvent(evt)と言うだけで、それを処理する方法を知っていることを意味します。
一方、リポジトリは単純な依存関係リゾルバを使用して適切な "IDataAdapter"実装を取得します。これらの実装の1つはSQLDataAdapterです。これが私の文脈が必要なポイントです。
どのようにして私のコンテキストをこの時点まで渡すことができますか?