nopcommerce之一(结构分析)
公司的项目,基于nopcommerce开发。接触项目至今已经快一个月了,对nopcommerce这个开源框架整个结构比较熟悉了。这个框架主要要知道三个文件夹,分别是Libraries、Plugins和Presentation。
第一个:Libraries
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的属性就需要在这里忽略。
nopcommerce之一(结构分析)的更多相关文章
- 我的NopCommerce之旅(7): 依赖注入(IOC/DI)
一.基础介绍 依赖注入,Dependency Injection,权威解释及说明请自己查阅资料. 这里简单说一下常见使用:在mvc的controller的构造方法中定义参数,如ICountryServ ...
- 我的NopCommerce之旅(3): 系统代码结构分析
一.概述 基于MVC 二.详细描述 \Libraries\Nop.Core 核心类,包括缓存.事件.帮助类.业务对象(订单.客户实体) \Libraries\Nop.Data 数据访问层,采用Enti ...
- (2)dotnet开源电商系统-brnshop VS nopCommerce(dotnet两套电商来PK--第二篇:代码从哪开始-BrnMall3.0Beta)
看大牛们的源码,对于水平一般的人,还是略微有点难度的.我从我自身读码的亲身体验,写下杂散片语,希望能和大家一同进步,也为了日后记忆上的备查. 先看的是brnMall的源码结构,从哪看起呢? 首先推荐看 ...
- [转]NopCommerce How to add a menu item into the administration area from a plugin
本文转自:http://docs.nopcommerce.com/display/nc/How+to+code+my+own+shipping+rate+computation+method Go t ...
- [转]nopCommerce Widgets and How to Create One
本文转自:https://dzone.com/articles/what-are-nopcommerce-widgets-and-how-to-create-one A widget is a sta ...
- 【NopCommerce源码架构学习-二】单例模式实现代码分析
单例模式是是常用经典十几种设计模式中最简单的..NET中单例模式的实现也有很多种方式.下面我来介绍一下NopCommerce中单例模式实现. 我之前的文章就分析了一下nop中EngineContext ...
- 【NopCommerce源码架构学习-一】--初识高性能的开源商城系统cms
很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从中学习很多企业系统.软件开发的规范和一些新的技术.技巧,可以快速地提高我们 ...
- [转]教你一招 - 如何给nopcommerce增加一个类似admin的area
本文转自:http://www.cnblogs.com/wucf2004/p/nopcommerce-area.html asp.net mvc里面的area是什么,点击这里查看 如果在nopcomm ...
- NopCommerce Alipay 支付插件
NopCommerce Alipay 支付插件 1.查找及下载NopCommerce Alipay插件 http://www.nopcommerce.com/p/963/alipay-payment- ...
随机推荐
- SSM项目配置随笔
一.自动扫描 使用Annotation自动注册Bean:在主容器中不扫描@Controller注解,在SpringMvc中只扫描@Controller注解. 1.spring配置文件(扫描注解) &l ...
- 如何写一个简单的shell
如何写一个简单的shell 看完<UNIX环境高级编程>后我就一直想写一个简单的shell来作为练习,因为有事断断续续的写了好几个月,如今写了差不多来总结一下. 源代码放在了Github: ...
- linux+php+apache web调用python脚本权限问题解决方案
lamp : linux + apache + mysql + php 在上篇随笔中linux+php+apache调用python脚本时出现的问题的根本原因是:apache运行时使用的apache用 ...
- linux autoload service create
---恢复内容开始--- EXEC="php-fpm" stop(){ echo "Stoping $EXEC ..." ps aux | grep " ...
- Modelica学习
Annotation Choices for Suggested Redeclarations and Modifications Replaceable model sample(start,int ...
- 采用css实现流动的边框
问题起缘一个曾经做过的项目, 类似excel那样, 选中单元格并复制或粘贴时有个边框流动的效果, like this: 在前端要作出这种效果可能方法并不少, 不过我只想到了2种, 真边框与假边框, 真 ...
- Linux课程实践三:简单程序破解
一.基本知识 1. 常用指令机器码 不同版本对应机器码不同,这里以我做实验的kali(Intel 80386)为例. 指令 作用 机器码 nop 无作用(no operation) 90 call 调 ...
- Android笔记之——消息Toast
java: package com.example.myapplication;import android.support.v7.app.AppCompatActivity;import andro ...
- Java Iterator, ListIterator 和 foreach语句使用
Java Iterator, ListIterator 和 foreach语句使用 foreach语句结构: for(part1:part2){part3}; part2 中是一个数组对象,或者是带 ...
- JSTL标准标签库 (使用foreach打印集合)
<%@page import="java.util.*"%><%@ page language= "java" contentType=&qu ...