将 Autofac 类型注册为单个实例,但每个 API 调用实例化新实例



将 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 注册为单个实例。

相关内容

  • 没有找到相关文章

最新更新