autofac相关内容

调用Autofac中的所有ISomething实例

我有一个接口ISomething,带有启动方法. 我想获取此接口的所有实现(在多个程序集中,在主要程序集和所有引用的程序集中),并在应用程序启动时调用Start方法. 如何使用Autofac 2.4.4.705做到这一点? 解决方案 您可以解决 IEnumerable 并为每个电话呼叫“开始" 忘记了,您应该首先注册ISomething的所有实现. ..
发布时间:2020-09-14 06:53:50 其他开发

具有Autofac依赖项的工厂

我想写一个工厂来创建各种类型的"xxNotification"类.我具体的"xxNotification"具有在AutoFac中注册的依赖项.我想使用Autofac获取/解析"xxNotification"的实例.该怎么做? public interface INotification { void Notify(string Action, int OrderID); } pub ..
发布时间:2020-09-14 06:53:43 C#/.NET

如何使用自定义工厂方法注册开放通用?

TL; DR :我可以使用Autofac创建一个通用工厂,以便我可以注入IProduct而不是在需要的任何地方从IFactory解析它吗?有没有办法将“从工厂解决"任务移至合成根目录? 因此,我正在使用第三方库,该库公开了一些通过工厂创建的通用接口.出于演示目的,我们假设以下代码是该库: 第三方库模型: public interface IFactory { ..
发布时间:2020-09-14 06:52:38 C#/.NET

使用AutoFac手动调用属性注入

假设所有依赖项都已在程序开始时注册.在程序的后面,如何使用AutoFac使用无参数构造函数创建新对象并将已注册的属性注入到该对象中? 解决方案 您可以使用PropertiesAutowired在容器中注册对象,然后在需要安装实例时使用resolve: ContainerBuilder builder = new ContainerBuilder(); // builder regis ..
发布时间:2020-09-14 06:51:34 其他开发

Autofac-构建前解决

使用Unity依赖项可以在构建容器之前解决. Autofac也可能吗? 下面的代码演示了我的情况-我需要解析ICacheRepository才能“更新"单例CacheHelper. 在Unity中,只需使用container.Resolve()代替???即可完成.在Autofac中怎么办? var builder = new ContainerBui ..
发布时间:2020-09-14 06:50:27 C#/.NET

Autofac-注册所有Windows窗体

是否可以要求Autofac在我的程序集中自动注册所有Windows窗体?此功能很可能类似于Autofac MVC支持的注册所有控制器的功能吗? 现在,我知道了 foreach (var type in Assembly.GetExecutingAssembly().GetTypesSafely().Where(type => type.IsSubclassOf(typeof(Form) ..
发布时间:2020-09-14 06:50:23 C#/.NET

Func< Owned T> vs Func< T>依赖

我知道Func与Func>不同,并且我知道如何注入每种类型的依赖项.但是,我常常会感到困惑,例如何时才能选择一个? 假设,我有一个遵循MVP模式的应用程序,并且我想注入一个视图PrintView.然后,我应该基于什么理由决定将视图注入为Func还是Func>? 解决方案 Func将从生存期范围中解析一个 ..
发布时间:2020-09-14 06:50:20 C#/.NET

Autofac使用不同的参数解析相同的类实例

我有一个Xamarin.Forms应用程序,正在使用Autofac进行DI. 所以我想要的很简单,但是我无法做一些看起来像在做的事. 因此,我有一个包含两个构造函数的类,它们两个都有一个参数,并且基于某些条件,我想解析其中一个.例如,我有一个班级A,我想要的基于条件B或C的问题应该得到解决. 例如: public class A { public A(B bObje ..
发布时间:2020-09-14 06:50:17 C#/.NET

Autofac多次注册组件

在上一个有关如何可视化依赖关系图的问题中,我为现在使用的代码奠定了基础可视化Autofac解析后的依存关系图. 运行代码,我得到一棵树,结果如下所示. Usd.EA.Bogfoering.WebApi.Controllers.BogfoerController (3851,7 ms. / 0,0 ms.) Depth: 0 Usd.EA.Bogfoering.WebApi.Con ..
发布时间:2020-09-14 06:50:13 C#/.NET

无法在类型为'System.String'的长度为1的多个构造函数之间进行选择

尝试解析类型时出现以下错误: 无法在类型为'System.String'的长度为1的多个构造函数之间进行选择.注册组件时,请使用UsingConstructor()配置方法显式选择构造函数. 该类型有1个构造函数,需要一个IRepository和一个ILog,所以我真的不知道System.String进入图片的位置.我很困惑.有谁知道这是什么问题吗? 这是堆栈跟踪: 在Au ..
发布时间:2020-09-14 06:50:09 其他开发

将log4net与Autofac一起使用

我正在尝试将log4net与Autofac一起使用. 我已将此代码粘贴 http://autofac.readthedocs.org/en/latest/examples/log4net.html , 并从Program.cs/Main()中执行 var iocBuilder = new ContainerBuilder(); iocBuilder.RegisterModule(new Lo ..
发布时间:2020-09-14 06:50:06 C#/.NET

可以在Autofac容器中临时注册组件吗?

我正在为第3方应用程序构建一个插件,并且我的插件使用Autofac连接各种组件.该容器是在应用程序启动时构建的,但是宿主应用程序稍后会调用我的命令. 调用命令时,主机应用程序会提供一些它定义的类型的实例,而我的组件将需要使用这些实例.我想在容器中注册这些实例,以便它可以处理依赖于这些实例的组件的连接. 我知道我可以使用ContainerBuilder来更新现有的容器,但是我想在命令完成 ..
发布时间:2020-09-14 06:50:02 其他开发

将结构图转换为Autofac

我最近购买了一本关于MVVM的非常好的书-《 Silverlight和WPF中用于企业体系结构的MVVM生存指南》 不幸的是,与IoC相关的部分中有很多针对StructureMap的代码示例,而Silverlight无法使用 任何人都可以指向我一个链接,该链接可以帮助我将“结构图"代码转换为Autofac,这是我正在使用的注入工具 代码使用创建类和引导程序的工厂方法 usi ..

如何在autofac中传递解析时间参数

我在autofac中编写以下寄存器类型: builder.RegisterType() .As() .WithParameter(ResolvedParameter.ForNamed("connectionstring")); 实际上,我编写了这段代码,用于使用connecti ..
发布时间:2020-09-14 06:49:55 C#/.NET

Autofac SingleInstance无法正常工作

我正在尝试使一个Singleton实例与Autofac一起使用.我有点用Winforms做准mvvm类型的事情,只是一个实验,所以不要挂断电话.但是我正在尝试让我的模型成为单个实例,并在命令中带有引用(ICommand并不是WPF的变体): 我对容器进行了以下设置: var cb = new ContainerBuilder(); cb.RegisterType ..
发布时间:2020-09-14 06:49:48 其他开发