首页 > IT职业 > IT生活 > 手工搭建ABP框架(1) - Web项目
ABP是 ASP.NET Boilerplate Project 的简称。ABP是基于DDD(领域驱动设计)的框架。ABP包含众多组件,包括依赖注入、动态API、审计日志、权限控制等等。在大部分的ABP教材中,会推荐使用模板(https://aspnetboilerplate.com/Templates) 来创建ABP工程。然而在实际使用中(至少在我的情况里)一般都需要手工搭建框架而非使用模板。手工搭建有下面几个好处:
1.模板创建的工程有很多不需要的东西需要调整或删除,手工搭建免去了这些麻烦;
2.手工搭建框架能更自由地根据实际需求进行自定义配置和扩展;
3.手工搭建能帮助你更深入地理解ABP框架。
由于手工搭建ABP框架材料较少,我搭建时踩了不少坑。所以在这里记录一下搭建框架的核心步骤,以免以后重新摸索,同时与大家分享,欢迎拍砖。下面我们以开发一个简单的微博应用为例来展示如何使用ABP框架。
大功告成!
你访问API的时候可能会出现"Empty or invalid anti forgery header token"的错误,这是因为某些ABP版本默认开启了CSRF防御。在MyTweetWebModule的PreInitialize方法加上下面这行代码关闭CSRF防御就可以了。
Configuration.Modules.AbpWeb().AntiForgery.IsEnabled = false; 模块主要用来管理系统初始化和关闭时要执行的操作。ABP在系统初始化和关闭时根据模块间依赖关系执行相应的操作。
定义一个模块只需要继承AbpModule。我们可以用DependsOn标签来声明模块间的依赖关系(ABP框架会自动解析依赖关系,但建议使用显式的声明)。
一个模块会有如下方法,我们可以重载这些方法来定义模块初始化/关闭时要做的操作:
PreInitialize:预初始化Initialize:初始化PostInitialize:后初始化Shutdown:关闭PreInitializePreInitializeInitializeInitializePostInitializePostInitializeShutdownShutdown
ABP框架解析MyTweetModule所依赖的模块,按顺序初始化这些模块(包括MyTweetModule)。
本文作者:古霜卡比,原文链接http://www.cnblogs.com/skabyy/p/7295533.html
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2298/viewspace-2808198/ ,如需转载,请注明出处,否则将追究法律责任。