首页 > 其他分享 >使用autofac注册继承特定接口的类或接口

使用autofac注册继承特定接口的类或接口

时间:2023-08-28 18:14:04浏览次数:27  
标签:IsAbstract autofac 注册 builder IsAssignableFrom 接口 && type

public class MyModule : Module
{
    /// <summary>
    /// 
    /// </summary>
    /// <param name="builder"></param>
    protected override void Load(ContainerBuilder builder)
    {
        // 扫描程序集中所有继承自ITransientDependency的类,并以Transient生命周期方式进行注册
        builder.RegisterAssemblyTypes(ThisAssembly)
            .Where(type => typeof(ITransientDependency).IsAssignableFrom(type) && type.IsClass && !type.IsAbstract)
            .AsImplementedInterfaces()
            .InstancePerDependency();

        // 扫描程序集中所有继承自ISingletonDependency的类,并以Singleton生命周期方式进行注册
        builder.RegisterAssemblyTypes(ThisAssembly)
            .Where(type => typeof(ISingletonDependency).IsAssignableFrom(type) && type.IsClass && !type.IsAbstract)
            .AsImplementedInterfaces()
            .SingleInstance();

        // 扫描程序集中所有继承自IScopedDependency的类,并以Scoped生命周期方式进行注册
        builder.RegisterAssemblyTypes(ThisAssembly)
            .Where(type => typeof(IScopedDependency).IsAssignableFrom(type) && type.IsClass && !type.IsAbstract)
            .AsImplementedInterfaces()
            .InstancePerLifetimeScope();
    }
}

 

标签:IsAbstract,autofac,注册,builder,IsAssignableFrom,接口,&&,type
From: https://www.cnblogs.com/7hello7/p/17663053.html

相关文章

  • 微信客服系统-授权注册客服账号
    为了方便用户快速注册客服账号,体验客服系统的功能。特别基于微信公众号网页授权机制,获取到微信昵称、头像、openID直接注册进入客服系统。详细流程打开微信-扫描下面二维码-允许获取权限-进入客服系统H5聊天测试客服系统H5-底部菜单【我的】-访客聊天链接直接访问聊......
  • ImportBeanDefinitionRegistrar手动控制BeanDefinition创建注册详解
    目录一、什么是ImportBeanDefinitionRegistrar二、ImportBeanDefinitionRegistrar使用很简单registerFilters()方法三、ImportBeanDefinitionRegistrar原理一、什么是ImportBeanDefinitionRegistrarImportBeanDefinitionRegistrar接口是也是spring的扩展点之一,ImportBeanDefinition......
  • python+playwright 学习-77 playwright 发送接口请求APIRequestContext
    前言每个Playwright浏览器上下文都有与其关联的APIRequestContext实例,该实例与浏览器上下文共享cookie存储,可以通过browser_context.request或page.request访问。也可以通过调用api_request.new_context()手动创建一个新的APIRequest上下文实例。通过浏览器发请求可以通过browser......
  • 如何调用api接口获取到商品数据
    要调用API接口获取商品数据,需要进行以下步骤:确定API接口首先需要确定要使用的API接口,可以通过搜索引擎或者相关文档来查找适合的API接口。以淘宝开放平台为例,可以使用淘宝的商品信息查询API接口来获取商品数据。注册API账号并获取API密钥要使用API接口,需要先在API平台上注册一个账......
  • .NET 依赖注入DI 注册服务
    一、概念1、控制反转:要什么给我就行了  2、依赖注入简化模块的组装过程,降低模块之间的耦合度 3、怎么创建xx对象->我要xx对象4、说白了就是定义了一套接口,我们写一个类去继承这个接口,那么这个类就需要实现这个接口的方法(功能和属性),这就是依赖注入。5、注入体现的是一个IOC(控......
  • 函数式接口和方法引用
    函数式接口和方法引用1.函数式接口概述只有一个抽象方法(default不算)的接口称为函数式接口.通常有注解:@FunctionalInterface进行标识.2.方法引用只有在lambda表达式总发现方法体只有一行代码就可以简化写法;例如:lambda的三层简化写法newArrayList<String>().st......
  • 电商数据接口API:品牌价格监控与数据分析的重要工具
    一、引言随着电子商务的快速发展,传统品牌企业越来越重视在线销售市场。为了在竞争激烈的市场环境中取得成功,企业需要实时掌握市场动态,了解自身产品的销售情况、价格趋势以及竞品信息。为了实现这一目标,各大电商平台(如淘宝、京东和拼多多)纷纷开放其数据接口,形成了电商数据接口API。......
  • 怎么找到真实可用的淘宝拼多多京东API?(商品数据订单数据销量价格接口)
    要找到真实可用的淘宝、拼多多、京东API,可以采取以下步骤:打开相应电商平台的开放平台网站,例如淘宝开放平台、拼多多开放平台、京东开放平台等。在网站中注册并登录,找到API文档或开发者文档等页面。在文档中搜索与所需功能相关的API接口,了解接口的使用方法、请求参数、返回数据格......
  • 还在为接口管理发愁吗?来试试这个工
    友好的接口文档,基于websocket的多人协作接口编辑功能和类postman测试工具,让多人协作成倍提升开发效率MockServer基于Mockjs,使用简单功能强大扁平化管理模式接口管理的逻辑较为复杂,操作频率高,层层审批将严重拖慢生产效率,因此传统的金字塔管理模式并不适用。YAPI将扁平化管理模式的......
  • 淘宝app商品详情原数据接口API(支持高并发请求/免费测试)
    item_get_app-获得淘宝app商品详情原数据 进入API测试一、引言随着移动互联网的迅速发展,移动电商应用的需求也在不断增长。淘宝作为中国最大的电商平台之一,每天需要处理大量的商品数据和用户访问请求。为了提供更加优质的用户体验,淘宝开放了商品详情原数据接口API,支持开发者在淘......