autofac相关内容

使用 Autofac 解析通用接口

给定以下代码,如何在 autofac 中解析正确的 SomeInstance? 公共类 BaseClass {}公共类 SubClass1 : BaseClass {}公共类 SubClass2 : BaseClass {}公共接口 IGenericInterface其中 T : BaseClass {}公共类 SomeInstance1:IGenericInterface其中 T ..
发布时间:2021-11-30 19:51:49 C#/.NET

Autofac - InstancePerHttpRequest 与 InstancePerLifetimeScope

这两个范围之间有什么区别? 我正在每一层(存储库、服务、MVC 应用程序)中构建 Module(s),但为了拥有 InstancePerHttpRequest,您需要 Autofac.Mvc 程序集. 我应该在存储库和服务层中使用哪个范围? 解决方案 InstancePerHttpRequest 和 InstancePerApiRequest 本质上做同样的事情——你为每个服务 ..
发布时间:2021-11-30 19:51:42 C#/.NET

如何在 AutoFac 中使用属性注入?

在控制台应用程序中,我使用的是 Log4Net,而在 Main 方法中,我正在获取记录器对象.现在,我想通过让所有类从具有 ILog 属性的 BaseClass 继承并应该通过属性注入而不是构造函数注入设置来使这个日志对象在我的所有类中可用. 我正在使用 AutoFac IoC 容器,如何将我的日志对象注入我的每个类的 Log 属性? 实现这一目标的最佳/最简单的方法是什么? 有 ..
发布时间:2021-11-30 19:51:32 C#/.NET

解析 IContainer

从应用程序的类内部获取 Autofac 容器的建议方法是什么?Autofac 是否提供解析类上的 IContainer 属性,或者我是否需要在构建容器后将其全局存储? 解决方案 对于大多数用途,您将需要 IComponentContext 或 ILifetimeScope.这些由 Autofac 自动提供,因此您需要做的就是对其中一个建立(构造函数)依赖项,然后将注入当前实例. 两个 ..
发布时间:2021-11-30 19:51:24 C#/.NET

如何在不使用控制器基类的情况下为所有视图设置 ViewBag 属性?

过去,我通过让所有控制器继承自一个公共基本控制器,以全局方式将公共属性(例如当前用户)粘贴到 ViewData/ViewBag 上. 这使我可以在基本控制器上使用 IoC,而不仅仅是针对此类数据访问全局共享. 我想知道是否有其他方法可以将这种代码插入到 MVC 管道中? 解决方案 我没有尝试过,但你可以看看 注册您的视图,然后在激活过程中设置视图数据. 因为视图是即时注册 ..
发布时间:2021-11-30 19:51:09 其他开发

Ninject 是否支持 Func(自动生成工厂)?

Autofac 自动为 Func 生成工厂;我什至可以传递参数. 公共类MyClass{public MyClass(Func a, Func b){var _a = a();var _b = b(1);}} 我可以用 Ninject 做同样的事情吗?如果没有,我可以应用什么解决方法? 谢谢. 更新: 刚刚找到这个帖子,似乎答案是否定的: 我如何处理类使用 Ninjec ..
发布时间:2021-11-30 19:50:59 其他开发

使用 autofac 将构造函数注入到基类中

我有一个抽象的基本控制器,它有一个构造函数,我希望在构建控制器时由 autofac 填充. 公共抽象类 BaseController : Controller{受保护的 ILogger { 获取;私人订制;}受保护的 BaseController(){}受保护的 BaseController(ILogger 记录器){记录器 = 记录器;}} 当我从中派生控制器时,这似乎不起作用. 只有 ..
发布时间:2021-11-26 16:26:39 其他开发

使用 autofac 将构造函数注入到基类中

我有一个抽象的基本控制器,它有一个构造函数,我希望在构建控制器时由 autofac 填充. 公共抽象类 BaseController : Controller{受保护的 ILogger { 获取;私人订制;}受保护的 BaseController(){}受保护的 BaseController(ILogger 记录器){记录器 = 记录器;}} 当我从中派生控制器时,这似乎不起作用. 只有 ..
发布时间:2021-11-25 08:58:16 C#

AspNet Core Autofac 处理我的 DbContext 即使它注册为 SingleInstance

在我们的应用程序中,我们有一个 api,它将一些数据存储到数据库中.我们正在使用 Entity Framework Core 3.1.1.存储此实体后,将一条消息发布到 Azure Servicebus,消费者将读取此消息并将消息存储到同一 DbContext 中的另一个表中. 据我所知,LifetimeScope 是针对每个 api 请求定义的.LifetimeScope 将在 api 请 ..
发布时间:2021-11-24 19:32:18 C#/.NET

Hangfire Autofac .net 核心 3.1

我正在使用 Hangfire.Autofac 并尝试根据文档对其进行配置: GlobalConfiguration.Configuration.UseAutofacActivator(builder.Build()); 但我得到以下异常: Build() 或 Update() 只能在 ContainerBuilder 上调用一次 我是 .Net Core 的新手,如何启用 Auto ..
发布时间:2021-11-24 19:11:42 C#

Mediatr:减少 DI 对象的数量

我有很多命令和查询,其中大多数需要相同的接口来做不同的事情.是否有可能减少我的每个处理程序都需要并一遍又一遍地重复的这种混乱? 公共类 GetCoinByIdQueryHandler : IRequestHandler{私有只读 EventsContext 上下文;私有只读 ICacheClient 缓存;私有只读 ILogger 记录器;私有只读 IMapper 映射器;私人只读设置设置;公共 ..
发布时间:2021-11-24 18:43:14 C#/.NET