AspectCore使用 属性注入FromServiceContext
.net5.0
nuget
<PackageReference Include="AspectCore.Core" Version="2.1.0" /> <PackageReference Include="AspectCore.Extensions.DependencyInjection" Version="2.1.0" /> <PackageReference Include="AspectCore.Extensions.Hosting" Version="2.1.0" />
配置:
public static void Main(string[] args) { CreateHostBuilder(args).UseServiceContext().Build().Run(); }
StartUp
services.AddControllersWithViews().AddControllersAsServices();
注意AddControllersAsServices方法,不添加则Controller中属性注入不生效!!!
==============================注意:属性注入,字段不行==============================
[AspectCore.DependencyInjection.FromServiceContext]
private ILogger<PrintController> log { get; set; }
构造完成才会注入