• .net core3.1 下由Autofac接管IOC


    我们都知道,.net core天生自带IOC容器,但是他的功能其实并不强大,而且有坑:在构造注入的时候,他默认找参数最少的构造函数。

    这里,我讲解如何使用Autofac去接管IOC,至于为什么要选Autofac,这个其实我也是随大众,不过后面我讲到关于使用Autofac实现AOP的时候,或许你能发现他的好处

    第一步,引包

     第二步,修改startup.cs文件

    首先,在类的内部定义一个新的方法

    1 public void ConfigureContainer(ContainerBuilder builder)
    2 {
    3     // 在这里添加服务注册
    4     //builder.RegisterType<ProductRepository>    ().As<IProductRepository>();//注册 
    5 }

    在这个方法里,完成服务注册。对于服务注册这块,关于Autofac的API如果有需要更多的了解的话,可以查阅Autofac指南

    第三步,修改Program.cs文件

    .UseServiceProviderFactory(new AutofacServiceProviderFactory())//使用AutoFac做IOC和AOP

     

    第四步,正式使用

    对于使用IOC,虽然Autofac有多种骚姿势,但是我这里还是推荐使用构造注入,如果要问为什么,其实关键在于,你不用在每个类库中都去拉包,到处都拉包的话,项目就会对组件产生依赖,产生一定的耦合。

  • 相关阅读:
    MUTC2013 E-Deque-hdu 4604
    MUTC7 C
    MUTC7 A-As long as Binbin loves Sangsang
    MUTC2013 J-I-number-hdu4608
    MUTC2013 H-Park Visit-hdu4607
    判断点是否在多边形内 扫描法
    蓝桥杯 基础练习 十六进制转八进制
    判断点是否在三角形内
    判断点在线段上
    向量的叉乘
  • 原文地址:https://www.cnblogs.com/shapman/p/12232924.html
Copyright © 2020-2023  润新知