zoukankan      html  css  js  c++  java
  • Unity ICO

    安装NuGet 包

    代码注册:

    //IUnityContainer container = new UnityContainer();
    //container.RegisterType<IPhone, Phone>();
    //container.RegisterType<IMicrosoftPhone, MicrosoftPhone>();
    //container.RegisterType<IBaseDal, BaseDal>();
    //container.RegisterType<IMakePhone, MakePhone>();
    
    //IPhone phone = container.Resolve<IPhone>();

    配置文件注册:

    <configuration>
      <configSections>
        <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Unity.Configuration"/>
        <!--Microsoft.Practices.Unity.Configuration.UnityConfigurationSection-->
      </configSections>
      <unity>
        <sectionExtension type="Microsoft.Practices.Unity.InterceptionExtension.Configuration.InterceptionConfigurationExtension, Unity.Interception.Configuration"/>
        <containers>
          <container name="aopContainer">
            <extension type="Interception"/>
            <register type="XShape.Core.IUserProcessor,XShape.Core" mapTo="XShape.Core.UserProcessor,XShape.Core">
              <interceptor type="InterfaceInterceptor"/>
              <!--<interceptionBehavior type="MyAOP.UnityWay.MonitorBehavior, MyAOP"/>
    
              <interceptionBehavior type="MyAOP.UnityWay.LogBeforeBehavior, MyAOP"/>
              <interceptionBehavior type="MyAOP.UnityWay.ParameterCheckBehavior, MyAOP"/>
              <interceptionBehavior type="MyAOP.UnityWay.CachingBehavior, MyAOP"/>
              <interceptionBehavior type="MyAOP.UnityWay.ExceptionLoggingBehavior, MyAOP"/>
              <interceptionBehavior type="MyAOP.UnityWay.LogAfterBehavior, MyAOP"/>-->
    
            </register>
          </container>
        </containers>
      </unity>
    </configuration>
    

     加载配置文件:

     public class ContainerFactory
        {
            public static IUnityContainer BuildContainer()
            {
                return _Container;
            }
    
            private static IUnityContainer _Container = null;
    
            static ContainerFactory()
            {
                _Container = new UnityContainer();
    
                ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
                fileMap.ExeConfigFilename = Path.Combine(AppDomain.CurrentDomain.BaseDirectory + @"CfgFilesUnity.Config");
                Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
    
                UnityConfigurationSection configSection = (UnityConfigurationSection)configuration.GetSection(UnityConfigurationSection.SectionName);
                configSection.Configure(_Container, "aopContainer");
            }
        }
    

      

     

  • 相关阅读:
    大型网站随着业务的增长架构演进
    springboot日志logback配置
    一些容易出错的细节
    从一个下载优化说起
    徒手优化冒泡排序
    php设计模式之观察者模式
    php设计模式之抽象工厂模式
    phper談談最近重構代碼的感受(3)
    php设计模式----工厂模式
    偏执的我从Linux到Windows的感受
  • 原文地址:https://www.cnblogs.com/delaywu/p/12684043.html
Copyright © 2011-2022 走看看