Mini 容器学习笔记1——环境搭建(基础篇)

一. 环境下载

到Mini 容器的官方网站下载NLite框架的二进制文件,下载并解压后就可以了。

我们使用NLite框架需要用到下面的文件:
NLite.dll(必要)

二. 建立NLite应用程序

  1.      新建一个控制台应用程序 HostMini
  2.      添加NLite.dll 引用
  3.      添加命名空间:using NLite;using NLite.Mini;
  4.      在主函数中添加创建Mini容器的代码:var container = new Kernel();
  5.      创建契约接口IMessageSender
  6.      创建组件EmailSender
  7.      通过服务注册表注册组件EmailSender
  8.      通过服务定位器获取契约接口
  9.      调用契约方法:
  10.      运行程序,输出结果
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NLite;
using NLite.Mini;


namespace HostMini
{
    public class App
    {
        [Contract]
        public interface IMessageSender
        {
            void Send(string message);
        }

        public class EmailSender : IMessageSender
        {
            public void Send(string message)
            {
                Console.WriteLine(message);
            }
        }

       

        [STAThread]
        static void Main(params string[] args)
        {
            var container = new Kernel();
            ServiceRegistry.Current = container;
            ServiceLocator.Current = container;            
            ServiceRegistry.Register<EmailSender>();

            var component = ServiceLocator.Get<EmailSender>();
            component.Send("Hello by component.");

            var contract = ServiceLocator.Get<IMessageSender>();
            contract.Send("Hello by contract");

            var componentId = typeof(EmailSender).FullName;
            var instance = ServiceLocator.Get<IMessageSender>(componentId);
            contract.Send("Hello by compoentId");

            Console.WriteLine(contract == component);

            
            Console.Read();

        }
    }
}
从代码中可以看出使用Mini容器非常简单,创建Mini容器,注册组件,获取组件三个基本步骤就可以了。

服务定位器中获取组件的原理篇,可看下文详细介绍。

Mini 容器官方网站:

       http://nlite.codeplex.com/

推荐资源:

Mini容器介绍

Mini容器学习目录

Mini容器学习目录1——环境搭建(基础篇)

Mini 容器学习笔记2——组件元数据(基础篇)

Mini 容器学习笔记3——组件的注册(基础篇)

Mini 容器学习笔记4——组件的生命周期(应用篇)

Mini 容器学习笔记5——组件的获取

Mini 容器学习笔记6——组件的获取(应用)

Mini 容器学习笔记7——构造函数注入

Mini 容器学习笔记8——字段注入

Mini 容器学习笔记9——属性注入

Mini 容器学习笔记10——方法注入

Mini 容器学习笔记11——Lazy注入

Mini 容器学习笔记12——组合实例

Mini 容器学习笔记13——插件注入

Mini 容器学习笔记14——异常处理

Mini 容器学习笔记15——监听器-初始化监听器

Mini 容器学习笔记16——监听器-释放监听器

Mini 容器学习笔记17——监听器-启动/停止监听器

Mini 容器学习笔记18——监听器-AOP监听器

posted @ 2010-07-06 13:06 风云 阅读(...) 评论(...) 编辑 收藏