微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

BarbarianIOC 简单的 IoC 容器

程序名称:BarbarianIOC

授权协议: CPOL

操作系统: Windows

开发语言: C#

BarbarianIOC 介绍

BarbarianIOC 是一个简单的 .NET 实现的 IoC 容器,示例代码

Container = new Container();
int someMockAge = 23; // this Could come from anywhere (App.Config / database etc etc)

//Register ALL components
container.RegisterComponents(
        //where you can use concrete type
        new Component().For<Foo>().WithInstanceMode(InstanceMode.Transient),
        //or you can use an interface and it's implementation
        new Component().For<IBaz>().ImplementedBy<Baz>().WithInstanceMode(InstanceMode.Transient),
        //and you can also declare singleton instance mode if you like
        new Component().For<SomeIBazDependantClass>().WithInstanceMode(InstanceMode.Singleton),
        //and even supply some non IOC provided constructor params by way of an anonymous object
        new Component().For<SomeFooDependantClass>()
            .DependsOn(new 
                { 
                    age=someMockAge
                })
            .WithInstanceMode(InstanceMode.Transient)
    );

//allow the container to wire stuff up (essentially create Expression.New for all 
//components to allow Container to compile and create some quicker lookup delegates)
container.WireUp();

BarbarianIOC 官网

http://www.codeproject.com/Articles/552514/BarbarianIOC-A-simple-IOC-Container

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐