将 ASP.NET API 与 Autofac 一起使用,尝试在 Web API 中注册单个实例
containerBuilder.RegisterType<SomeService>().As<ISomeService>().SingleInstance();
注意,上面提到的SomeService依赖于使用注入和配置的SomeRepository。
containerBuilder.RegisterType<SomeRepository>().As<ISomeRepository>();
注射使用
public class SomeService : ISomeService
{
private readonly ISomeRepository someRepository;
public AppSettingService(ISomeRepository someRepository)
{
this.someRepository= someRepository;
}
...
我希望这在整个应用程序生命周期中只实例化一次,但每个 API 调用都会创建新实例。我做错了什么?
SomeRepository 未注册为单个实例。将 SomeRepository 注册为单个实例。