剑轩

c#使用unity实现依赖注入四:unity配置文件注入

电脑版发表于:2019/1/23 11:03


需要用到的配置文件


一:先向xml申明一下unity的配置文件所在的实现类

  <configSections>
    <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection,Microsoft.Practices.Unity.Configuration"/>
  </configSections>


二:xml中配置类之间的关系

  <unity>

    <container name="UnityDll">
      <register type="DAL.IUserDAL,DAL" mapTo="DAL.UserTwoDAL,DAL"></register>
    </container>

  </unity>


三:在代码中读取xml内容

 UnityConfigurationSection section = System.Configuration.ConfigurationManager.GetSection("unity") as UnityConfigurationSection;


四:加载xml内容到容器

 //section:xml节点 
 //UnityDll:容器名称
 uc.LoadConfiguration(section, "UnityDll");


五:xml中配置生命周期


使用lifetime就可以了:例如瞬时模式

 <lifetime type="Microsoft.Practices.Unity.TransientLifetimeManager,Microsoft.Practices.Unity" />

单利模式

 <lifetime type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager,Microsoft.Practices.Unity" />

其实就是和后台一样的,只是使用的是类全面+程序集名称


完整一点的写法:

  <unity>

    <container name="UnityDll">
      <register type="DAL.IUserDAL,DAL" mapTo="DAL.UserTwoDAL,DAL">
        <lifetime type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager,Microsoft.Practices.Unity" />
      </register>
    </container>

  </unity>



关于TNBLOG
TNBLOG,技术分享。技术交流:群号677373950
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢