首页 > 编程语言 >手动批量注入service 自动依赖注入 C# asp.net dontet 依赖注入

手动批量注入service 自动依赖注入 C# asp.net dontet 依赖注入

时间:2024-11-30 09:02:09浏览次数:5  
标签:dontet 依赖 service C# asp 注入

手动批量注入service 自动依赖注入 C# asp.net dontet 依赖注入

public static class ServiceCollectionExtensions
{

    // 批量注入所有的继承IBaseService的Service
    public static void AddPDAServices(this IServiceCollection services)
    {
        var assemblies = AppDomain.CurrentDomain.GetAssemblies();

        foreach (var assembly in assemblies)
        {
            //获取继承IBaseAppService的类
            List<Type> types = assembly.GetTypes().Where(t => t.IsClass && t.GetInterfaces().Contains(typeof(IBaseAppService))).ToList();

            types.ForEach(impl =>
            {
                //获取该类所继承的所有接口
                Type[] interfaces = impl.GetInterfaces();
                interfaces
                    .ToList()
                    .ForEach(i =>
                    {
                        services.AddScoped(i, impl);
                    });
            });
        }
    }
}

标签:dontet,依赖,service,C#,asp,注入
From: https://www.cnblogs.com/zhuoss/p/18576910

相关文章

  • 依赖倒置原则:Java实践篇
            在软件开发的世界里,设计原则如同指南针,指引着我们构建更加健壮、可维护和可扩展的系统。其中,依赖倒置原则(DependencyInversionPrinciple,DIP)是面向对象设计(OOD)中的一个重要原则,它属于SOLID原则中的“D”。本文将深入浅出地介绍依赖倒置原则的概念、目的、实践......
  • 集合类型的依赖注入问题例子,例如:list,array,set,map,properties
    CollectionBean类packagecom.xqw.pojo;importjava.util.*;publicclassCollectionBean{privateList<String>lists;privateInteger[]arrs;privateSet<String>sets;privateMap<String,String>maps;privatePropert......
  • Go的依赖管理Go Module
    Go的依赖管理GoModule来源https://www.liwenzhou.com/posts/Go/go_dependency/历史遗留问题如果是使用Go1.11和Go1.12版本,需要手动开启Gomodule支持为什么需要依赖管理最早的时候,Go所依赖的所有的第三方库都放在GOPATH这个目录下面。这就导致了同一个库只能保存一个......
  • DI依赖注入详解
    DI依赖注入声明了一个成员变量(对象)之后,在该对象上面加上注解@AutoWired注解,那么在程序运行时,该对象自动在IOC容器中寻找对应的bean对象,并且将其赋值给成员变量,完成依赖注入。@AutoWired依赖注入的常见方式1.属性注入直接使用@AutoWired进行属性注入:@AutowiredprivateUse......
  • 想做黑客?先来学习 SQL 注入,一文带你学会!黑客技术零基础入门到精通教程建议收藏!
    SQL注入(SQLInjection)是一种常见的网络攻击手段,攻击者通过在Web应用程序的输入字段中插入恶意SQL代码,欺骗后台数据库执行非授权的SQL语句。SQL注入可以用于获取、篡改或删除数据库中的数据,甚至可以用于执行系统命令,导致数据泄露、数据破坏或服务器被控制等严重后果......
  • 前端如何预防SQL注入?
    前端本身无法直接阻止SQL注入。SQL注入是一种服务器端漏洞,它发生在恶意SQL代码被插入到应用程序的数据库查询中时。由于前端代码在用户的浏览器中执行,而数据库查询在服务器上执行,因此前端无法直接访问或修改数据库查询的过程。尽管如此,前端仍然可以在预防SQL注入方面发挥......
  • 漏洞挖掘一文讲清基于mssql数据库的sql注入,黑客技术零基础入门到精通教程请收藏!
    文章目录1判断网站数据库类型2了解mssql数据库的主要三大系统表3了解mssql的主要函数4判断注入点及其注入类型5联合查询之判断列数6联合查询之获取数据库相关信息7mssql之时间盲注8mssql之报错注入9总结......
  • 1+X应急响应(网络)常见网络攻击-SQL注入:
    常见网络攻击-SQL注入:SQL注入概述:动态网站的工作流程:SQL注入的起源:SQL典型的攻击手段:SQL注入的危害:SQL注入的函数:SQL注入类型:提交方式分类:Get注入:Post注入:Cookie注入:HTTP的头部注入:头部的利用点User-agent:Referer:按照执行效果分类:注释:......
  • IDEA如何整理代码格式,格式化代码,去除无效依赖,自动缩进等
    前言大家好,我是小徐啊。我们在IDEA中,经常是需要格式化代码的,这样代码才能好看一点。今天,我就来介绍下如何在IDEA中格式化代码,让代码看起来更加好看整洁一点。如何格式化代码首先,我们打开要格式化代码的文件。然后,鼠标右击下。然后,点击下重新格式化代码,或者重新格式化文件选项......
  • 什么是幽灵依赖
    幽灵依赖的出现和npm的发展存在一定关系。早起的npm1,2都是链式下载相关依赖,虽然链式解决了子依赖版本冲突问题,但是仍然无法重复使用相同版本依赖,并且会导致文件路径过长无法解析等问题(路径地址长度一般处理260多位)如下图所示: 为了解决无法重复使用相同版本依赖问题,npm3推出......