不少同窗都读过这篇文章吧 ASP.NET MVC中你必须知道的13个扩展点,今天给你们介绍一个ASP.NET MVC的扩展库,主要就是针对这些扩展点进行。这个项目的核心是IOC容器,包括Ninject, StructureMap, Unity ,Windsor和Autofac。若是你和我同样喜欢使用IOC,这个库值得你关注。html
ASP.NET MVC扩展库的网站地址是http://mvcextensions.github.io/,基于Ms-PL协议的开源库,下面介绍一下他的特性:git
- 这个库的核心是IOC,却能够让你的代码和IOC无关,你的代码却能够使用强大的IOC。
- 多个IOC库的适配器:全部.NET上流行的IOC容器都有适配器。
- Bootstrapping:不用在各个项目中写相似的代码来处理你的Controller/Controller Factory/Model Binders/View Engines/Action Filters/Custom Dependencies的注册。
- PerRequestTask:相似于HttpModule处理自定义的业务逻辑,还能够控制执行的顺序。
- Model Binder:经过构造函数注入你的Model Binder的自定义的依赖。
- Action Filter Fluent Registration:支持构造函数方式注入你的Action Filter。
- ModelMetadata Fluent Configuration:支持复合ModelMetadata provider, 默认使用DataAnnotationsModelMetadataProvider,还支持EF Code First 和 Fluent NHibernate.
- 各类ActionResults:包含通用的ActionResults,其中包括XmlResult,ExtendedJsonResult(支持JsonConverters),Adaptive PRG (PostRedirectGet) results。
- 各类通用的Route 变量:包括Range、Positive Int/Long、 Guid、 Enum,、RegEx等等。
- 各类其余的实用方法和助手类。
这个库的实际应用的例子能够看这个项目Shrinkr和KiGG
github
参考连接:http://www.cnblogs.com/shanyou/archive/2010/05/15/1736463.htmlmvc
https://archive.codeplex.com/?p=mvcextensionsapp