小白初学Ioc、DI、Castle Windsor依赖注入,大神勿入(不适)
过了几天,我又来了。上一篇中有博友提到要分享下属于我们abp初学者的历程,今天抽出点时间写写吧。起初,我是直接去看阳光铭睿的博客,看了一遍下来,感觉好多东西没接触过,接着我又去下了github 里面下了几个例子来看,看起来还是有点吃力,毕竟我只用过MVC3和asp.net4.0以及EntityFramework3.5 ,突然感觉自己好像跟世界脱轨了,什么IOC只是听老师提过,当时不知道有什么用就没怎么听,AutoMapper,AngularJS,Less什么的没听过。没办法,只好先去一个一个把他们攻下来咯,我先选择了IOC,感觉它好像很厉害的样子,上谷粉搜搜找了下资料,IOC控制反转(Inversion of Control),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度,最常见的就是DI依赖注入(Dependency Injection)。依赖注入的基本原则是:应用组件不应该负责查找资源或者其他依赖的协作对象。配置对象的工作应该由IoC容器负责,“查找资源”的逻辑应该从应用组件的代码中抽取出来,交给IoC容器负责(就是说将对象存放到一个容器里面去,需要使用的时候直接去容器里面取出来用就可以了,容器内部是怎么找到这个对象就不用使用者操心了)。这里有说明控制反转和依赖注入的基本知识,就不再重复说,http://zhangjunhd.blog.51cto.com/113473/126530 ,深入理解这里有,http://www.cnblogs.com/xingyukun/archive/2007/10/20/931331.html,然后我们需要回到Abp,Abp里面的容器是Castle windsor 这边文章讲的应该是比较清楚了http://www.cnblogs.com/RicCC/archive/2010/03/30/castle-windsor-ioc-di.html ,ABP框架对它进行了包装,配置文件上面的代码被以C#代码的形式实现了,所以我们不需要去配置文件写代码配置了,我们需要做的就是在每一个Module(模块)里面加上这句 :IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); 从下面这个链接里创建生成的模板项目已经自动添加上去了www.aspnetboilerplate.com/Templates ,然后你就可以使用resolve函数取得所需对象了,这里Abp里面的IOC就说完了,本人上尚年轻,能力有限,如有错误请指出。后面再说关于其他技术的事宜。
小白初学Ioc、DI、Castle Windsor依赖注入,大神勿入(不适)的更多相关文章
- Castle.Windsor依赖注入的高级应用_Castle.Windsor.3.1.0
[转]Castle.Windsor依赖注入的高级应用_Castle.Windsor.3.1.0 1. 使用代码方式进行组件注册[依赖服务类] using System; using System.Co ...
- ASP.NET Web API - 使用 Castle Windsor 依赖注入
示例代码 项目启动时,创建依赖注入容器 定义一静态容器 IWindsorContainer private static IWindsorContainer _container; 在 Applica ...
- Castle.Windsor依赖注入的高级应用与生存周期
1. 使用代码方式进行组件注册[依赖服务类] using System; using System.Collections.Generic; using System.Linq; using Syst ...
- Spring之IOC/DI(反转控制/依赖注入)_入门Demo
在平时的java应用开发中,我们要实现某一个功能或者说是完成某个业务逻辑时至少需要两个或以上的对象来协作完成,在没有使用Spring的时候,每个对象在需要使用他的合作对象时,自己均要使用像new ob ...
- ASP.NET Core Web 应用程序系列(一)- 使用ASP.NET Core内置的IoC容器DI进行批量依赖注入(MVC当中应用)
在正式进入主题之前我们来看下几个概念: 一.依赖倒置 依赖倒置是编程五大原则之一,即: 1.上层模块不应该依赖于下层模块,它们共同依赖于一个抽象. 2.抽象不能依赖于具体,具体依赖于抽象. 其中上层就 ...
- Spring专题2: DI,IOC 控制反转和依赖注入
合集目录 Spring专题2: DI,IOC 控制反转和依赖注入 https://docs.spring.io/spring/docs/2.5.x/reference/aop.html https:/ ...
- 深入浅出spring IOC中三种依赖注入方式
深入浅出spring IOC中三种依赖注入方式 spring的核心思想是IOC和AOP,IOC-控制反转,是一个重要的面向对象编程的法则来消减计算机程序的耦合问题,控制反转一般分为两种类型,依赖注入和 ...
- 转:深入浅出spring IOC中四种依赖注入方式
转:https://blog.csdn.net/u010800201/article/details/72674420 深入浅出spring IOC中四种依赖注入方式 PS:前三种是我转载的,第四种是 ...
- ASP.NET Core Web 应用程序系列(二)- 在ASP.NET Core中使用Autofac替换自带DI进行批量依赖注入(MVC当中应用)
在上一章中主要和大家分享在MVC当中如何使用ASP.NET Core内置的DI进行批量依赖注入,本章将继续和大家分享在ASP.NET Core中如何使用Autofac替换自带DI进行批量依赖注入. P ...
随机推荐
- Android QQ空间浏览图片动画特效的实现(※)
1 http://blog.csdn.net/yangblocker/article/details/12680247 2 photoview 3 nineoldandroid
- Spring进阶教程之在ApplicationContext初始化完成后重定义Bean
前言 很久没有写博客了,也是两个原因:一是自己觉得一直在班门弄斧,其实自己没什么技术可言:二是很多朋友的问题实际上可以自行解决,我经常觉得不该我来过问,或者是有时候我认为技术还得靠自己钻研,我一两句话 ...
- HTTP 头部详细解释
HTTP 头部解释 ================================================ Accept 告诉WEB服务器自己接受什么介质类型,*/* 表示任何类型,ty ...
- jar包制作
1,利用jdk自带的工具制作 1) 首先要确保所有的java文件都被编译成了.class文件,可以用javac批量编译多个文件 javac c:\java\src\wz\learning\*.java ...
- Oracle数据库入门——物化视图语法
一.Oracle物化视图语法 create materialized view [view_name]refresh [fast|complete|force][on [commit|demand] ...
- HP P1008打印机如何打印特殊纸张
一.问题的提出 HP P1008中间有一个进纸槽,这是干什么的? 二.问题的分析 查说明,说这个进纸槽是叫做优先进纸槽,用于各种非常规的纸张的打印. 三.问题的解决 弄一张特殊尺寸的纸张,打开要编辑的 ...
- java攻城狮之路(Android篇)--MP3 MP4、拍照、国际化、样式主题、图片移动和缩放
一.MP3播放器 查看Android API文档可以看到MediaPlayer状态转换图: 练习: package com.shellway.mp3player; import java.io.Fil ...
- C#基础课程之五集合(HashTable,Dictionary)
HashTable例子: #region HashTable #region Add Hashtable hashTable = new Hashtable(); Hashtable hashTabl ...
- HandlerMethodArgumentResolver数据绑定无效
因项目中action参数过多,并且是一些通用的查询参数,所以准备进行对参数统一封装为Map对象,然后由action中传入service中进行处理,查询spring的资料发现可以通过实现HandlerM ...
- Android之startActivityForResult的使用
在Android中startActivityForResult主要作用就是: A-Activity需要在B-Activtiy中执行一些数据操作,而B-Activity又要将,执行操作数据的结果返回给A ...