zoukankan      html  css  js  c++  java
  • AutoFac文档8(转载)

    目录

    1. 开始
    2. Registering components
    3. 控制范围和生命周期
    4. 用模块结构化Autofac
    5. xml配置
    6. 与.net集成
    7. 深入理解Autofac
    8. 指导
    9. 关于
    10. 词汇表

    泛型

    给定一个开放的泛型,Autofac会提供一个具体的实现。

    开放的泛型类型使用泛型服务注册,给定一个服务类型和一个实现类型

     
    1
    2
    3
    public interface IRepository<T> { }
     
    public class NHibernateRepository<T> : IRepository<T> { }

    使用RegisterGeneric配置容器

     
    1
    2
    3
    4
    5
    6
    builder.RegisterGeneric(typeof(NHibernateRepository<>)).As(typeof(IRepository<>));
     
    当检索一个具体的服务时,会正确的得到一个具体的实现类型:
     
    // Returns NHibernateRepository<User>
    var userRepo = container.Resolve<IRepository<User>>();

    限制

    Autofac关心泛型约束。如果一个有约束的实现类型对服务不可用,那么这个实现类型将被忽略

    参数映射

    autofac支持一些复杂的参数映射,泛型参数可能会被重新整理以专供服务类型

  • 相关阅读:
    SonarQube
    Gerrit
    Jenkins
    Jenkins
    GitLab
    GitLab
    GitLab
    centos7配置国内yum源
    CentOS7 ping: unknown host www.baidu.com
    VirtualBox下安装CentOS7系统
  • 原文地址:https://www.cnblogs.com/sandea/p/3289933.html
Copyright © 2011-2022 走看看