c# - 如何将 IServiceCollection 注册转换为 Autofac 注册?

标签 c# dependency-injection autofac

Wonderful Microsoft.Extensions.DependencyInjection.IServiceCollection 有很多与之相关的扩展。

一个例子是 Microsoft.Extensions.Logging.ConsoleLoggerExtensionsAddConsole(this ILoggingBuilder builder) 方法在 ILoggingBuilder 中注册 ConsoleLoggerProvider IServiceCollection 类型的 .Services 属性。

所以,对于任何使用 Autofac 的人来说,这是一个合乎逻辑的问题。如何重用所有这些扩展?有没有办法将所有 IServiceCollection 注册转换为 ContainerBuilder 注册?

最佳答案

获取 Microsoft.Extensions.DependencyInjection注册到 Autofac 是 Autofac.Extensions.DependencyInjection 包的重点。这就是 Autofac 与 .NET Core 的集成。 There is plenty of doc and examples on how to get going.

顺便说一下,这种适配器模式并不是 Autofac 特有的。这种转换之类的事情是大多数其他 DI 框架如何支持 Microsoft.Extensions.DependencyInjection 中的符合容器。 .如果您出于某种原因碰巧放弃了 Autofac,请查看有关这些框架的文档,因为它们都有某种集成库。

关于c# - 如何将 IServiceCollection 注册转换为 Autofac 注册?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53338704/

相关文章:

c# - 阻止 Ninject 自动绑定(bind) Func<T, T, bool>

javascript - 在 AngularJS 中注入(inject)原始类型

c# - 类应该同时实现 IAsyncDisposable 和 IDisposable 吗?

c# - Autofac 约束绑定(bind)

asp.net-mvc-3 - ASP.NET MVC 3 应用程序的扩展?

c# - TextWrapping 属性设置为 WrapWholeWords 时获取参数不正确错误?

c# - 将 JSON 反序列化为可读格式

c# - 从返回 DateTime 的 Function 返回 null

c# - MVC 为同一个 bool 属性生成两个输入字段。我该如何阻止它?

c# - 使用带有 XML 配置的 Autofac