• Unity(三):快速入门


      最近patterns & practices团队采用了一种新的文档发布模式,就是Release版本的产品在发布的同时,将产品文档同步到msdn中。这样的话,如果你只想先了解下产品,或者先了解再决定是否安装的话,可以先在msdn上浏览,而不必安装->看文档->卸载。

      在这里,首先给出一个简单使用Unity的简单示例。通过示例,让我们对Unity的使用有一个初步的认识和了解。在接下来的文章中,我会展开做详细的介绍和分析。如果对Unity是还一点概念也没有的话,可以参考我前面的两篇文章:Unity(一):从ObjectBuilder说起,Unity(二):Unity是什么?。

      本示例主要展示了Unity在type mapping方面的一个基本应用。

      使用Unity,最基本步骤有三步。

      1. 建立容器;

      2. 将接口与类的映射注册到容器中;

      3. 从容器中解析出正确的对象。

      为了接下来的说明,我们先编写几个后面需要的接口和类:

      Step0. 准备工作

      ILogger接口:

    Unity(三):快速入门  

      ConsoleLogger类:

    Unity(三):快速入门  

      NullLogger类:

    Unity(三):快速入门

      Step1. 创建容器

      在Unity中创建容器实例最简单的方法是直接使用构造函数创建,如下代码所示:

      IUnityContainer container = new UnityContainer();

      Step2. 注册接口映射

      在Unity中提供了一组ReGISter方法供我们在容器中注册接口映射,如下代码所示:

      container.RegisterType<ILogger, ConsoleLogger>();

      Step3. 获取对象实例

      在Unity中提供了一组Resolve方法用以获取对象实例,如下代码所示:

      ILogger logger = container.Resolve<ILogger>();

      OK,就这么简单!

      测试:

    Unity(三):快速入门

      场景一:注册一个ConsoleLogger作为ILogger的实现到容器中,然后从容器中解析ILogger的实现,并调用ILogger的Log方法。

    Unity(三):快速入门

      结果:

    Unity(三):快速入门

      场景二:注册一个NullLogger作为ILogger的实现到容器中,然后从容器中解析ILogger的实现,并调用ILogger的Log方法。

    Unity(三):快速入门

      结果:

    Unity(三):快速入门

  • 相关阅读:
    List<Object> 查询解析优化
    hibernate 中 query.list()的优化
    移动端屏幕宽度自适应原理及实现
    js获取用户当前地理位置(省、市、经纬度)
    mescroll.js简单的上拉加载、下拉刷新插件,带完整注释
    Web前端性能优化总结——如何提高网页加载速度
    浏览器渲染页面的原理及流程
    优酷1080p的kux格式文件怎么转换为MP4格式?
    js处理文章详情页点击量统计
    plupload上传视频插件jQuery+php
  • 原文地址:https://www.cnblogs.com/wukong0214/p/2870349.html
Copyright © 2020-2023  润新知