- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
nopCommerce 的源代码结构和架构
编写本文档是为了向程序员说明 nopcommerce 的解决方案结构,亦是程序员开发 nopcommerce 的居家
必备良书。首先 nopcommerce 的源代码很容易拿到,它是开源的,所以你可以直接到网上下载。 在你
打开 VS 以后项目和文件夹都会完整列出来,我们建议你在看此文档的同时也打开你的VS 来浏览项目和
文件。
绝大多数的项目,目录和文件都顾名思义,你可以从名字就大概知道是做什么的。比如
Nop.Plugin.Payments.PayPalStandard 这个我都不用看项目代码就能猜到做什么的。
\Libraries\Nop.Core
Nop.Core 项目包含 nopcommerce 的一系列核心类如缓存,事件,辅助类和业务对象(如订单和客户实体
类)
\Libraries\Nop.Data
Nop.Data 项目包含一系列的数据访问类和方法以从数据库或其他数据媒介读取和保存数据。它也有助于把
数据访问逻辑和你的业务对象分离。 nopcommerce 使用 Entity Framework (EF) Code-First 方法,允许你
在 nopcommerce 代码中定义实体 (所有的核心实体类都在 Nop.Core 中定义),再让 EF 生成数据库,这就
是为什么会叫 Code-First。你接下来可以用 LINQ 来查询对象,它自己会把查询转换为 SQL 语句并在数据
库里执行。nopcommerce 拥有牛 B 的API 让你完全定制持久映射,你可以在这儿和这儿找到 Code-First
的资料。
\Libraries\Nop.Services
此项目包含一系列的核心服务,业务逻辑,验证,如果有数据的话还有数据的计算方法,也就是传说中的
业务访问层(BAL)
\Plugins\ 文件夹中的那些项目
Plugins 是 VS 的解决方案文件夹,硬盘中它是在你解决方案的根目录下。由于项目在编译时的输入路径
是”..\..\Presentation\Nop.Web\Plugins\{Group}.{Name}\”,这样插件的 DLL 会自动地放到
\Presentation\Nop.Web\Plugins\文件夹中,用来放置已部署插件。这样也能让插件包含静态文件比如 CSS
或 JS ,就不用在项目之间拷贝这些文件了。
\Presentation\Nop.Admin
Nop.Admin 是一 MVC 项目,如果你还从没用过 ASP.NET MVC ,请猛击这儿有更多信息。可能你已经猜
到这是表示层中的管理后台,你可以在 \Presentation\Nop.Web\Administration 文件夹中找到它,此项目
不能运行。
\Presentation\Nop.Web
Nop.Web 也是一 MVC 项目,前台网店的表示层,这个才是你真正要跑起来的项目,它也是整个应用程序
的起始项目。
\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 是一个类库,包含其它测试项目中要用的一共有类和辅助方法,此项目不包含任何测试用例
扩展现有实体-添加新的属性
Updating an existing entity. How to add a new
property.
扩展现有实体:如何添加一个新的属性?
This tutorial covers how to add a property to the Affiliate entity that ships with the nopCommerce source
code.
本教程将为代理商实体 Affiliate entity 添加一个属性,附带 nopCom 源码。
The data model 数据模型
Entities will have two classes that are used to map records to a table. The first class defines the
文档评论(0)