这个文档是让开发者了解nopcommerce解决方案结构的指南。这是新的nopcommerce开发者学习nopcommerce代码的相关文档。首先,nopCommerce源代码是很容易得到的。它是一个开源应用程序,因此,所有你只要从代码托管完整下载它就行了。在你打开VS以后项目和文件夹都会完整列出来,我们建议你在看此文档的同时也打开你的VS来浏览项目和文件。

大部分项目、目录和文件的都可以通过名称,得到设计者的一个粗略想法。例如,这个Nop.Plugin.Payments.PayPalStandard项目,只要看名称就能猜出它是干什么的。

\Libraries\Nop.Core

Nop.Core项目包含nopcommerce的一系列核心类如缓存,事件,辅助类和业务对象(如订单和客户实体类)

\Libraries\Nop.Data

该Nop.Data项目包含了一系列的类和函数来读取和写入数据库或其他数据存储介质。该Nop.Data库有助于将数据访问的逻辑从业务对象中分离出来(分离关注点)。 NopCommerce使用实体框架(EF)Code-First方法。Code-First允许开发人员在源代码中定义实体(所有核心实体在Nop.Core项目中定义),然后用EF来生成基于C# 类的数据库。这就是为什么它被称为Code-First。然后,您可以使用LINQ来查询对象,因为它会悄悄地把代码转化为SQL语句并在数据库执行。 NopCommerce采用了流畅的API来完全定制持久性映射。如果想了解更多Code-First请访问这里这里

\Libraries\Nop.Services

这个项目包含了一组核心服务,业务逻辑,验证,以及与数据相关的计算(如果需要的话)。通常叫做业务访问层(BAL)。

Projects into \Plugins\ solution folder

Plugins是VS的解决方案文件夹,硬盘中它是在你解决方案的根目录下。由于项目在编译时的输入路径是”..\..\Presentation \Nop.Web\Plugins\{Group}.{Name}\”,这样插件的DLL会自动地放到 \Presentation\Nop.Web\Plugins\文件夹中,用来放置已部署插件。这样也能让插件包含静态文件比如CSS或JS,就不用在项 目之间拷贝这些文件了。

\Presentation\Nop.Admin

Nop.Admin是一个MVC Web应用程序项目。如果你还没有使用过ASP.NET MVC,请在这里了解更多的信息。可能你已经猜到这是表示层中的管理后台,你可以在 \Presentation\Nop.Web\Administration文件夹中找到它,该项目不能运行。

\Presentation\Nop.Web

Nop.Web也是一个MVC Web应用程序项目,前台网店的表示层,这个才是你真正要运行的项目,它也是整个应用程序的起始项目。

\Presentation\Nop.Web.Framework

Nop.Web.Framework是一个表示层的公共类库项目,包括可以让后台和前台使用的一些共用的展示功能。

\Test\Nop.Core.Tests

Nop.Core.Tests是Nop.Core 项目的测试项目。

\Test\Nop.Data.Tests

Nop.Data.Tests是 Nop.Data 项目的测试项目。

\Test\Nop.Services.Tests

Nop.Services.Tests 是 Nop.Services 项目的测试项目。

\Test\Nop.Tests

Nop.Tests是一个类库,包含其它测试项目中要用的一共有类和辅助方法。它不具有任何测试用例。

\Test\Nop.Web.MVC.Tests

Nop.Web.MVC.Tests is 是 表示层的测试项目。

nopcommerce商城系统--源代码结构和架构的更多相关文章

  1. 部署NopCommerce商城系统问题整理

    NopCommerce是一个很棒的开源商城系统,下面整理一下我在部署使用NopCommerce系统中的一些问题. 我使用的是NopCommerce3.9版本. 1.安装 安装教程网上很多,这里不细说, ...

  2. nopcommerce商城系统--技术与系统需求

    原址:http://www.nopcommerce.com/technologysystemrequirements.aspx 在这里,我们将着眼于nopCommerce的系统要求.为了运行nopCo ...

  3. nopCommerce的源代码结构和架构

    下载地址 nopcommerce的源代码很容易拿到,它是开源的,所以你可以直接到网上下载.下载地址:http://www.nopcommerce.com/downloads.aspx 因为nop是国外 ...

  4. [转]nopcommerce商城系统--如何编写一个插件

    本文转自:http://www.cnblogs.com/ganqiyin/p/3680771.html 原址:http://www.nopcommerce.com/docs/77/how-to-wri ...

  5. nopcommerce商城系统--如何编写一个插件

    原址:http://www.nopcommerce.com/docs/77/how-to-write-a-nopcommerce-plugin.aspx plug-in (或 plugin)是一个为更 ...

  6. nopcommerce商城系统--开发者常遇问题清单

    原址:http://www.nopcommerce.com/docs/74/frequently-asked-development-questions.aspx 以下是开发者常见问题的清单.也介绍了 ...

  7. nopcommerce商城系统--安装nopCommerce

    原址:http://www.nopcommerce.com/docs/79/installing-nopcommerce.aspx .NET Framework 4.5.1下载:http://www. ...

  8. nopcommerce商城系统--文档整理

    原址:http://www.nopcommerce.com/documentation.aspx nopCommerce文档可以帮助您一步一步的搭建属于您自己的在线商城.根据该文档说明,您可以选择您想 ...

  9. nopcommerce商城系统--升级NopCommerce

    原址:http://www.nopcommerce.com/docs/80/upgrading-nopcommerce.aspx 本章介绍如何nopCommerce升级到最新版本.你可能希望这样做,你 ...

随机推荐

  1. Invalid argument supplied for foreach()

    将需要被遍历的数组强制转换为数组类型即可 <?php $array = null; foreach((array)$array as $value){ #..code.... } ?>

  2. 在虚拟中开启Windows 8.1的Hyper-V平台

    VM安装windows8开启Hype-V 今天老魏用VM安装了Windows8.1系统,想用此系统来开发一下Windows Phone8,但是要求确实要开启Hyper-V平台技术,本来是没有任何的问题 ...

  3. 【学习总结】IOS程序运行过程 、UIWindow 、controller 、 UIView 创建过程的总结

    程序启动开始到view显示: 程序启动首先会执行main函数 - > UIApplicationMain函数: 程序启动 (加载框架,info文件,资源等) 执行Main函数 初始化UIAppl ...

  4. Telerik_2012_Q3 (已破解)全套下载链接

    1.Telerik_OpenAccess_ORM_2012_3_1012_SDK.zip (暂未提供下载) 2. Telerik_OpenAccess_ORM_2012_3_1012.zip 3. T ...

  5. linux 批量重命名文件

    模拟结果文件路径结构大概是:/当前目录/模型名/字模型名模拟/模拟温度/模拟结果文件. 模拟结果文件命名时相同的.模拟结果文件需要修改模拟结果文件的后缀名. 附shell脚本: find -type ...

  6. python 中的列表解析和生成表达式 - 转

    优雅.清晰和务实都是python的核心价值观,如果想通过操作和处理一个序列(或其他的可迭代对象)来创建一个新的列表时可以使用列表解析(  List comprehensions)和生成表达式,通过这两 ...

  7. jquery mobile validation

    <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content ...

  8. 阿里云PHP Redis代码示例

    测试代码示例 <?php /* 这里替换为连接的实例host和port */ $host = "localhost"; $port = 6379; /* 这里替换为实例id和 ...

  9. hdu 1730 Northcott Game 博弈论

    很简单的博弈论问题,可以转化为Nim 代码如下: #include<iostream> #include<stdio.h> #include<algorithm> ...

  10. php Laravel windows安装

    先要装一个composer, 如果不会装请看这里composer windows可以直接下载composer-setup.exe, 如果安装失败提示"Unable to connect to ...