.NET IOC 框架 —— Castle Windsor配置

本文介绍了.NET环境中常用的IOC框架Castle Windsor,对比了它与Spring .Net的区别。重点阐述了为何使用IOC框架以实现接口与实现的解耦,并详细展示了如何在项目中集成并配置Castle Windsor,包括创建自定义的WindsorControllerFactory,以及在Global.asax中的初始化和销毁操作。
摘要由CSDN通过智能技术生成
一. 常见的IOC框架为Castle Windsor和Spring .Net,只不过后者比较依赖配置文件
二.为什么要使用IOC框架

1.普通的实例化方式 IMyService myService = new MyService()有一个弊端:接口与实现没有分离

2.如果使用Castle Windsor框架,实例化方式为:

IMyService myService = container.Resolve<IMyService>( );

如果接口对应多个实现类,实例化方式为:

IMyService[ ] myServices = container.ResolveAll<IMyService>( );

三. Castle Windsor

1.创建一个项目,使用Nuget引入Castle Windsor,同时需要安装Microsoft.AspNet.Mvc;

2.创建一个类继承DefaultControllerFactory:因为在ASP.NET MVC中,每次请求,DefaultControllerFactory都会创建controller的实例,所以在项目中新建一个WindsorControllerFactory类继承DefaultControllerFactory,让Castle Windsor来创建controller的实例;

using System;
using System.Web.Mvc;
using System.Web.Routing;
using Castle.MicroKernel;

namespace PersonalPlanning.Init.IOC
{
    public class

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值