zoukankan      html  css  js  c++  java
  • 抽象工厂模式和autofac的使用总结

      抽象工厂模式和依赖注入的使用目的都是降低对象直接依赖耦合关系,应该说依赖注入是抽象工厂模式的一种升华,功能更强大。

       说到抽象工厂的模式,一般都要先解释下简单工厂,简单工厂就是将对象的实例化抽取出来形成创建对象的容器。这个只是做了简单的代码重构的一种方式,谈不上模式之言。

       抽象工厂实现方式是向客户端提供一个接口,使客户端不要指定具体产品对象,创建多个产品族的产品对象。将具体实例的创建延迟到对应实现的子类中。

       抽象内部区别不同对象实例化可以用反射创建指定具体产品实例。

       autofac是依赖注入第三方插件,可以通过注册接口类与实现类程序集实现批量对象的自动化依赖注入,autofac对mvc客户端也提供相应的实现,有了autofac,项目中真正实现了面向接口的编程,大大降低对象之间耦合程度。

        关于注入关键demo代码:

      ContainerBuilder builder = new ContainerBuilder();
                var assemblies = AppDomain.CurrentDomain.GetAssemblies().Where(w => w.FullName.StartsWith("ClassLibrary")).ToArray();
                builder.RegisterAssemblyTypes(assemblies).AsImplementedInterfaces().InstancePerLifetimeScope();
                builder.RegisterControllers(typeof(WebApiApplication).Assembly);
                var container = builder.Build();
                DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

      

       

  • 相关阅读:
    .Netcore 2.0 Ocelot Api网关教程(7)- 限流
    .Netcore 2.0 Ocelot Api网关教程(6)- 配置管理
    .Netcore 2.0 Ocelot Api网关教程(5)- 认证和授权
    .Netcore 2.0 Ocelot Api网关教程(4)- 服务发现
    字符串方法集锦
    location下的属性集锦
    Js apply call方法详解
    所有事件event集锦
    移动端常用默认样式
    原生js的各种方法
  • 原文地址:https://www.cnblogs.com/JaggerMan/p/4732964.html
Copyright © 2011-2022 走看看