Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# InstancePerDependence与构造函数注入Autofac的生命周期_C#_Autofac - Fatal编程技术网

C# InstancePerDependence与构造函数注入Autofac的生命周期

C# InstancePerDependence与构造函数注入Autofac的生命周期,c#,autofac,C#,Autofac,我对依赖生命周期的概念相当陌生。我已经阅读了有关的文档 对于InstancePerDependence,默认值为。该页面讨论如何在生命周期内解析,以便容器正确地处理它。我能理解这一点 但是,当Autofac通过构造函数自动注入依赖项时该怎么办呢。当web请求完成时,容器是否仍保存引用?帮助 请注意,使用Autofac集成库时,标准工作单元 将自动为您创建和释放生存期范围。 例如,在Autofac的ASP.NET MVC集成中,生命周期范围 将在web请求开始时为您创建 组件通常将从那里解析。最后

我对依赖生命周期的概念相当陌生。我已经阅读了有关的文档

对于InstancePerDependence,默认值为。该页面讨论如何在生命周期内解析,以便容器正确地处理它。我能理解这一点

但是,当Autofac通过构造函数自动注入依赖项时该怎么办呢。当web请求完成时,容器是否仍保存引用?

帮助

请注意,使用Autofac集成库时,标准工作单元 将自动为您创建和释放生存期范围。 例如,在Autofac的ASP.NET MVC集成中,生命周期范围 将在web请求开始时为您创建 组件通常将从那里解析。最后 web请求时,将自动释放作用域-无其他 您需要创建范围。如果您使用的是 集成库,您应该知道 您可以使用自动创建的作用域


换句话说,如果Autofac正在创建控制器来处理web请求(如果它正在注入依赖项,则必须是这样),那么依赖项将使用为每个控制器创建的作用域进行解析,并在web请求结束时进行处理。

是的。持有要处置的引用的概念就是为什么不应该直接从容器解析。因此,在这种情况下,IntancePerDependency实际上与InstancePerRequest相同?我就是这样理解的。