Kigg项目分析 -- 1.项目的入口

本文介绍了通过分析Kigg框架来深入理解ASP.NET MVC的过程。重点探讨了项目的入口、URL规则定义及依赖注入(IOC)的应用,并详细解释了如何通过Bootstrapper初始化应用程序。

最近看了微软的asp.net mvc系列视频教程,mvc又有了新的认识,但最近手懒的很,故而没有再写什么实验程序,而是下载了一个轻量级的开源mvc项目KIGG通过分析来学习asp.net mvc.

Kigg是个框架中重载了很多asp.netmvc底层的东西,如最简单的post,get.看完之后让然有种豁然开朗的感觉.

关于Kigg的项目结构,网上已经有文件进行说明了,我就不单独讲述了.但是在我的学习中,会随时贯穿项目结构说明.

 

1.       项目的入口

在开始研究这个框架的时候,一直没有找到定义URL规则的地方。就是说该项目并没有像传统的MVC程序,将URL规则和一些程序初始化的工作写在Global.asax中。但是在我们在Global.asaxOnStart中,能看到这个方法:Bootstrapper.Run();转到定义后,我们能看到这样一句:

           IoC.ResolveAll<IBootstrapperTask>().ForEach(t => t.Execute());

看到了IOC,我第一反应就是要到配置文件中去找找实现IBootstrapperTask的类有哪些。通过搜索,我发现有:CreateDefaultUsers,StartBackgroundTasks,RegisterRoutes,RegisterControllerFactory,从名字我们就能看出,RegisterRoutes就是我们要找的注册URL Routes的地方。找到RegisterRoutes类后,就能从Execute()方法中找到注册的URL路径了。

从我们找到项目的过程中,我们不难发现这个项目的几个特点:首先,大量的使用Helper方法,如我们在一开始看到的ForEach就是一个典型的枚举的Helper。其次就是IOC始终贯穿整个项目,如IoC.ResolveAll<IBootstrapperTask>这种方式就是典型的IOC用法。

转载于:https://www.cnblogs.com/yriyr/archive/2010/10/02/1841338.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值