公司的项目,基于nopcommerce开发。接触项目至今已经快一个月了,对nopcommerce这个开源框架整个结构比较熟悉了。这个框架主要要知道三个文件夹,分别是Libraries、Plugins和Presentation。数据库
第一个:Librariesapp
Libraries里有四个项目,分别是Nop.Core、Nop.Data、Nop.Lucenes和Nop.Services。Nop.Core放的是实体类,咱们的实体类放在这个项目的Domain文件夹中,实体能够是一张数据库里的表,也能够是对应业务模型的一个实体模型;Nop.Data处理实体与数据库表的对应关系,处理这层关系相关的类放在Plugins项目中的Mapping文件夹中;Nop.Lucenes咱们暂时无论,由于开始接触用不到;Nop.Services处理实体与数据库的业务,好比增删改查这些业务,这是底层直接跟数据库打交道的。框架
Plugins放的是一些插件,公共的,本身写的都放在这里,如支付宝的插件等,nopcommerce自己集成了不少插件,能够直接调用。插件
Presentation下面有两个MVC项目:Nop.Admin和Nop.Web。Nop.Web就是应用程序的开始,这两个项目里的MappingExtension文件是处理model和entity之间的映射关系的,说白了就是ToModel和ToEntity方法;项目里的Infrastructure文件夹下的AutoMapperStartupTask文件也是处理映射关系,这里主要是处理entity和model之间的属性的对应关系,好比model里的属性并非entity的属性就须要在这里忽略。支付宝