问题标签 [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
我有一个泛型类 ( GenericClass
),它依赖于泛型类型 ( IGenericDependency
)。这种依赖也是通用的。
类型参数直到运行时才知道。
到目前为止,我已经这样做了:
我正在注入一个 Func。
以及重新注册代码:
我想知道是否有另一种方法可以做到这一点。
registration - 在 MVC2 中使用 FluentValidation 的 Autofac
在 ValidatorFactory.CreateInstance 调用中执行期间出现“未注册错误”。看起来发送到方法中的类型是正确的。
我的注册码:
我的 ValidatorFactory 代码:
我的视图模型和验证器代码:
我最好的猜测是我错误地注册了验证器。
.net - Autofac - 服务构造函数引用实例化对象
我该如何处理:
当前代码看起来像;
我想用 Autofac 将 FooService 注入 Class1。这个注册是怎么做的?谢谢。
c# - 插件架构中的 DI (Autofac):每个插件有一个单独的 DI 容器可以吗?
我正在尝试将 DI(使用Autofac)引入现有的 Windows 窗体应用程序。
这个应用程序有一个基本的插件架构,每个插件都显示自己的表单。启动时,应用程序会扫描已注册的程序集以查找实现 的类型,IPlugin
然后使用以下命令激活这些程序集Activator.CreateInstance
:
我无法改变这个给定的框架。这意味着,每个插件类都是通过非 DI 方式实例化的,在我看来,因此我必须为每个插件引导一个单独的 DI 容器。
我的问题是,是否可以为每个插件创建一个单独的ContainerBuilder
容器并且仍然相当有效?(大约有 10 个不同的插件。)或者整个应用程序应该只有一个 DI 容器?
我在下面提供了我当前解决方案的一些示例代码。
我也不确定是否在插件构造函数中创建一个容器然后简单地忘记它,而是让它在后台进行自动装配,可以吗?
.net - 在 Autofac 中,如何更改调用 Build 后注册的实例?
所以可以说我有这个代码
然后一段时间后,我想MyType
为所有调用的未来解析更改实例container
。
asp.net - 使用 Autofac 将服务注入到 NHibernate 的 IUserType 的实现中
我正在使用 NHibernate 将以下类映射到我的 ASP.NET MVC 应用程序中的 Oracle 数据库:
在我找到的几个示例之后,我想使用 NHibernate 的 IUserType 的实现来转换我的数据,当它被持久保存到我的数据库示例或从我的数据库示例中检索时。
由于我已经编写了一个EncryptionService
类来处理我的应用程序其他部分的数据加密,我想将它注入到我的用户类型中。有没有办法使用 Autofac 对 IUserType 执行构造函数注入?
asp.net-mvc-2 - Autofac - 注册插件
我有一个定义一些方法的接口,我有 N 个实现它的类。如何使用 autofac 注册在所有加载的程序集中找到的所有类?
mvvm - 我应该在容器中注册 ViewModel 吗?
我应该在 Container 中注册 ViewModel 并从那里解决吗?
好处:
- 激活视图模型时我可以执行一些操作
- 容器将为我注入依赖项
- ???
缺点:
- ViewModel 生命周期管理可能很棘手:
- 如果我将 ViewModel 设为单例,则无法实例化多个相同类型的控件
- 如果我让 ViewModel 瞬态,那么当我实际上期望注入相同的实例时,我很容易陷入拥有多个不同实例的情况
- ???
正确答案是什么?如果我可以减轻终身缺陷,我更愿意注册。
如果重要的话,我正在使用 Caliburn 和 Autofac。
asp.net - Autofac - 按类型注册插件
我正在编写一个插件系统:每个插件都在他自己的程序集中,必须由 autofac 加载,并由带有设置插件类型的参数的属性签名。我将能够在我的 asp.net mvc 应用程序中按类型解析插件,我该怎么做?每个插件都由一个抽象类继承并覆盖预定义的方法。
nhibernate - NHibernate ISession 使用和线程安全
当我将 ISession 生命周期配置为“每个 HTTP 请求”(我正在使用的 Autofac 中的 InstancePerLifetimeScope)时,NHibernate 分析器告诉我我的 Session 正在跨线程使用,这很可能是一个错误。到底是怎么回事?我习惯于认为我应该将工作单元范围限定为 http 请求,但似乎会话确实被跨线程使用。
本质上,这个“每个 HTTP 请求的 ISession”与 NHibernate 分析器警报冲突。我哪里错了?
更新:我的 Web.config 中确实有一个 ContainerDisposalModule,因此处置工作正常