问题标签 [autofac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
autofac - 懒惰怎么了支持 Autofac?
在 Autofac 2.1 的 beta 版本中,支持自动解析,Lazy<T>
如 Nicholas Blumhardt 的Lazing Around with Autofac博客文章中所述。
该代码似乎仍然在 Google Code 的源代码中,但我在我查看过的任何 .NET 4.0 二进制文件中都找不到LazyDependencyModule
。是不是搬到别的地方了?
如何Lazy<T>
在最新的 Autofac 版本中使用 Autofac 的自动分辨率?
asp.net - 如何使用 Autofac 将设置器注入 ASP.NET MVC2 中的操作过滤器?
我认为这会在我的 Global.asax Application_Start 中解决问题,但它不起作用:
我错过了什么?
c# - 制作自定义 IoC - 如何实现具有范围的 DI?
我正在为自己的学习/成长编写一个 IoC 容器。通常我会写如下内容:
会转向:
如何抽象 DisposableObject 以便它是using
使用 IoC 时范围内使用的唯一实例?我试图弄清楚 Autofac 是如何做到的,但我并不完全确定。
编辑:当使用using
范围实例化对象时,解析该类型的所有调用(在本例中IDisposableObject
)都应返回范围变量,而不是新实例。同样重要的是,在using
语句之后,另一个Resolve<IDisposableObject>
被调用,它返回一个新实例。
c# - 为多个接口返回相同的实例
我正在使用以下代码注册组件:
然后我有一个实现两个接口的类:
如果我解决IStartable
我得到一个实例,如果我解决IConsumer<ConsoleCommand>
我得到另一个。
如何为两个接口获取相同的实例?
nhibernate - NHibernate session management in NServiceBus with Autofac
Andreas Ohlund has an excellent article here on how to use Structuremap to wire the NHibernate session so that it enlists in the NSB transaction automatically.
Does anyone know if it is possible to achieve the same with Autofac?
asp.net-mvc - 使用 Autofac 创建组件后自动设置属性
这是示例代码:
我正在使用 AutofacControllerFactory 在我的 ASP.NET MVC 应用程序中创建控制器。是否可以在每个控制器的构造函数中消除这行代码:
换句话说:是否可以使用 ControllerContext 自动设置此属性?这应该是可能的,因为每个 IService 实现都有一个可设置的 IContext 属性。
我应该扩展 AutofacControllerFactory 还是有标准的方法?
autofac - Autofac没有将相同的实例传递给构造函数中的解析参数
我有以下设置
我希望每个构造函数中的 common 参数是同一个实例,但是当 SomeClass 被解析时,它会创建 ICommon 的新实例。我怎么能得到这个时间。我试图将它们注册为 InstancePerLifetimeScope,但它的行为与 SingleInstance 相同。
asp.net - 在 ASP.NET 应用程序中托管的 WCF 服务中使用 Autofac for DI
我在使用 Autofac 1.4.5 将服务依赖项注入我的 WCF 服务时遇到问题。我已经阅读并关注了WcfIntegration 上的 Autofac wiki 页面,但我的调试显示我的 WCF 服务是由该System.ServiceModel.Dispatcher.InstanceBehavior.GetInstance()
方法创建的,而不是由AutofacWebServiceHostFactory
. 我究竟做错了什么?
我已将我的ajax.svc
文件设置为与示例中的文件类似,以用于WebHttpBinding
:
我的 WCF 服务类Ajax
是这样定义的:
现在我已经使用了Global.asax.cs
上面提到的 wiki 中所示的接线:
和
在我的 web.config 我有
.
该服务已经正常工作,但我无法让 Autofac 位(阅读:创建/注入)工作。有任何想法吗?
编辑: 不幸的是,删除默认构造函数会导致以下异常:
干杯,奥利弗
c# - 如何从静态类中解析命名实例?
有谁知道我做错了什么?
我有一个这样的静态类:
在我的 MVC 应用程序的 Global.asax.cs 中,我有:
现在关于问题:我如何从容器中解析命名实例?
但是当 ApplicationContainer 类不是静态的时,从容器中解析效果很好。我使用 autofac 2.2.4。
c# - Autofac - 动态解析带有参数的组件
我有一个将接口作为构造函数参数的类。这个接口有两种实现,我想根据一个变量来决定在运行时使用什么实现。
问题是上面的类在 Autofac 解决的对象层次结构中很深,所以我不能传递参数。
像下面这样的东西是我想要实现的。
有任何想法吗?
更新:
澄清一下,这是一个现有的对象层次结构,由运行良好的现有应用程序使用。此外,对象模型比本示例中显示的模型大得多。因此,我真的不想将工厂传递给对象图中的每个构造函数,以供该图中深处的类使用。
有没有办法在 Class2 不知道的情况下将 IInterface1 的不同实现传递给 Class1?
谢谢