Autofac中,RegisterAssemblyOpenGenericTypes和RegisterAssemblyTypeswithAsClosedTypesOf的区别是什么?
创始人
2024-11-12 12:30:23
0

在Autofac中,RegisterAssemblyOpenGenericTypes()方法具有通用的特性,而RegisterAssemblyTypes().AsClosedTypesOf()方法则是用于将已知类型关闭为指定的泛型类型。 例如,在以下示例中,你可以看到如何使用RegisterAssemblyOpenGenericTypes()方法来注册泛型类型,以及如何使用RegisterAssemblyTypes().AsClosedTypesOf()方法通过关闭现有类型来注册指定泛型类型:

using Autofac;
using System.Linq;
using System.Reflection;

public class ExampleModule : Autofac.Module
{
    protected override void Load(ContainerBuilder builder)
    {
        // Register all open generic types in a specific assembly as themselves.
        builder.RegisterAssemblyOpenGenericTypes(Assembly.GetExecutingAssembly())
            .AsSelf();

        // Register all types in a specific assembly that close some known type as that type.
        builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly())
            .AsClosedTypesOf(typeof(ILogger<>));
    }
}

以上示例中,使用RegisterAssemblyOpenGenericTypes()方法,注册了当前程序集中的所有开放泛型类型,并将它们都注册为它们自己。这就是使用RegisterAssemblyOpenGenericTypes()方法注册泛型类型的一个示例。

另一方面,使用RegisterAssemblyTypes().AsClosedTypesOf()方法,则可以使用现有的类型,将它们关闭为指定的泛型类型。例如,在示例中将所有的ILogger<>类型都关闭为已知的ILogger类型。

相关内容

热门资讯

透视游戏!wepoker私人辅... 透视游戏!wepoker私人辅助器(透视)陕西三代二辅助器(一贯存在有辅助安装)-哔哩哔哩1、用户打...
透视透视!菠萝辅助器免费版的特... 透视透视!菠萝辅助器免费版的特点(透视)金华佛手在线辅助软件(切实是有辅助工具)-哔哩哔哩运金华佛手...
透视美元局!德州局hhpoke... 透视美元局!德州局hhpoker(透视)新悠悠拼十辅助(本来真的有辅助软件)-哔哩哔哩1、操作简单,...
透视好牌!德普之星怎么设置埋牌... 透视好牌!德普之星怎么设置埋牌(透视)斗棋崇阳麻将辅助脚本(原来有辅助下载)-哔哩哔哩1、斗棋崇阳麻...
一直以来!hhpoker作必弊... 一直以来!hhpoker作必弊实战视频(透视)张同学俱乐部开挂系统(一贯是有辅助插件)-哔哩哔哩1、...
推出新举措!hhpoker辅助... 推出新举措!hhpoker辅助器(透视)五十k辅助(果然真的是有辅助平台)-哔哩哔哩1、进入游戏-大...
透视真的!德普软件(透视)多乐... 透视真的!德普软件(透视)多乐跑胡子辅助(竟然有辅助修改器)-哔哩哔哩;1、多乐跑胡子辅助破解器简单...
透视计算!wepoker俱乐部... 透视计算!wepoker俱乐部辅助(透视)逍遥湖北卡五星辅助器(其实真的是有辅助app)-哔哩哔哩1...
今天下午!智星德州插件(透视)... 今天下午!智星德州插件(透视)小闲川南辅助工具(其实是真的辅助下载)-哔哩哔哩今天下午!智星德州插件...
透视教程!wepoker插件下... 透视教程!wepoker插件下载(透视)情怀游戏字牌辅助(确实是真的辅助下载)-哔哩哔哩1、进入游戏...