久しぶりの書き込み記事、最近.NET core3.0と、双方向記録に開発問題の数。
1.最初に導入さnuget
Autofac
Autofac.Extensions.DependencyInjection
2. Program.csのは.UseServiceProviderFactoryを追加、変更(新しいAutofacServiceProviderFactory())
パブリック クラスプログラム { パブリック 静的な 無効メイン(文字列[] argsを) { CreateHostBuilder(引数).Build()を実行します()。 } パブリック 静的 IHostBuilder CreateHostBuilder(文字列 []引数)=> Host.CreateDefaultBuilder(引数) .UseServiceProviderFactory(新しいAutofacServiceProviderFactory()) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup <起動時> (); }); }
3.変更Startup.cs
添加services.AddControllersWithViews()AddControllersAsServices()。
公共 のボイドConfigureServices(IServiceCollectionサービス) { services.AddControllersWithViews()AddControllersAsServices(); }
加えます
空ConfigureContainer公開(ContainerBuilderビルダー) { //ここにサービス登録を追加 }
これで、コントローラ内の注入方法を完了することができます。