小白初学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 ...
随机推荐
- [Tip] 如何在BeyondCompare中忽略不重要的区别.
在使用BeyondCompare时,有时需要忽略一些不重要的区别,下面的链接教你如何通过定义语法元素来实现这个功能. http://www.scootersoftware.com/support.ph ...
- 【Xamarin报错】libpng warning : iCCP: Not recognizing known sRGB profile that has been edited
报错: Xamarin Android 编译时发生以下错误: libpng warning : iCCP: Not recognizing known sRGB profile that has be ...
- preg_match_all正则表达式的基本使用
了解正则表达式之前,须要掌握一些常用的正则表达式的基础知识,这些如果能记得最好记得,记不住须要用的时候能查到就行,就多个特殊字符,所以说正则表达式玩的就是特殊,具体大家可以查看更加细致的说明. pre ...
- 泊松回归(Poisson Regression)
本博客已经迁往http://www.kemaswill.com/, 博客园这边也会继续更新, 欢迎关注~ Linear Regression预测的目标\(Y\)是连续值, Logistic Regre ...
- QT编写DLL给外部程序调用,提供VC/C#/C调用示例(含事件)
最近这阵子,接了个私活,封装一个开发包俗称的SDK给客户调用,查阅了很多人家的SDK,绝大部分用VC编写,而且VC6.0居多,估计也是为了兼容大量的XP用户及IE浏览器,XP自带了VC6.0运行库,所 ...
- 解决在IE下LABEL中IMG图片无法选中RADIO的几个方法
转http://www.cnblogs.com/chenxianbin89/archive/2012/11/25/2787258.html . 方法三,THML代码控制: 在IMG中加一个属性,dis ...
- html5[1]:优化Android Webview性能
尽量少用position:relative 做一个OTO项目时,页面上下滑动时,颤抖的很厉害: 页面中主要是图片比较多,开始以为是图片多的原因,但是把所有图片都不加载,还是颤抖: 后来,去掉所有外部的 ...
- PLSQL快捷补充代码设置
菜单Tools-->Preferences...然后依次选择下图红色选项 弹出下图对话框 输入需要快速生成的语句点击保存 点击Save后在slq窗口中输入 设置的语句缩写 列入:第一个sf 然 ...
- Linux常用命令回顾
文件操作:ls 查看文件ls -a 查看全部文件,包括隐藏文件(以.开头)ls -l 查看文件的详细信息(ll同样的效果)ls -lh 查看文件的详细信息,人性化显示,文件大小标注单位文件权限-代表文 ...
- ios基础之入门(一)
最近找到了一个可以接触ios开发的职位,可以系统的学习和练习了.先从最基本的开始: 一.获取控件的两种方式 1)第一种,也是经常使用的一种,通过IBOutlet方式.直接按住control键,将控件和 ...