すべてのクラスを解決するためにASP.NET Core DIを構成できますか? Autofac AnyConcreteTypeNotAlreadyRegisteredSource機能と同様のものです。ASP.NETコアは自動的にすべての依存関係を解決します
私はASP.NET CoreでAutofacを使用できますが、ASP.NET Coreには既にDIがあるため、私はアプリケーションにライブラリを追加したくありません。
だから、基本的には代わりに:
services.AddTransient<MyService>();
services.AddTransient<MyAnotherService>();
私のような何かを行うことを好む:
services.ResolveAll();
私はそれができると思うが、それを行う便利な呼び出しがまだありません。私はあなたの特定のユースケースがこのために何であるか興味があります。あなたは何を達成しようとしているのですか?なぜこれをやるのが最善の方法だと思いますか? –
@ErikNorenそれは私が通常DIを使用する方法です。私は愚かなインターフェイスを作成しないことをお勧めします。ですから、実装が1つだけ必要な場合は、インターフェイスとクラスの代わりにクラスを作成します(テストフレームワークまたはDIフレームワークを幸せにする)。ほとんどのプロジェクトでは、いくつかの機能を実現するためにいくつかの実装が必要なわけではありません。だから、 'Foo'クラスを注入したいのであれば、' Foo'クラスだけです。そして私の目標は、DIを設定しないことです。実際に私はこの 'builder.RegisterSource(new AnyConcreteTypeNotAlreadyRegisteredSource());' –