【翻译】从头开始编写一个Orchard网上商店模块(1) - 介绍
原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-part-1
介绍
在这个系列博客中,我们将共同经历从头开始构建一个Orchard模块的过程!
虽然Orchard是一个了不起CMS(内容管理系统),有着强大的功能和令人振奋的架构,可以无限的扩展,但它可能需要花费一定时间,以充分了解它的架构,并能够定制您自己的主题的各个方面或甚至创造整个模块来集成Orchard所有的可扩展性点。
我希望,你将受益于我前进的道路上所获得的知识,你会看到Orchard及其架构之美。它不仅只是在简单或高级的网站和博客方面表现很出色,同时它也是一个非常基础的平台,用于创建各种基于Web的应用,如电子商务后端, CRM的投票系统,项目管理,社区网站,学习管理系统等等。基本上你打算从头创建的任何应用都应考虑使用Orchard创建。Orchard实际上是一个可扩展的框架,它不仅仅“只是”一个CMS。你可以通过插件方式做任何常规ASP.NET MVC应用可以做的事,同时Orchard还拥有一套丰富的功能和兼容概念,你可以获得额外的好处。
本播客系列主要面向刚刚接触Orchard的ASP.NET MVC开发人员,在开始深入这前,如果您还没有阅读过下面文章,我强烈建议您先阅读以下文章:
http://docs.orchardproject.net/Documentation/How-Orchard-works
http://msdn.microsoft.com/en-us/magazine/hh708754.aspx
网上商店功能
我们的网上商店模块将启用以下功能:
- 管理员将能够将任意ContentType(内容类型)通过附加到ProductPart上,从而把它变成产品。
- 网站访客(顾客)将能够把产品添加到购物篮,通过网站注册,并成为注册用户。
- 用户将能够进行结算和通过在线支付服务提供商(PSP)支付(在我们的演示,我们将使用Ogone模拟PSP)选定的产品。
- 在客户被重定向到PSP之前,系统将创建一个Order(订单)记录,及其OrderDetail (订单明细)记录。
- 在客户支付订单后,我们需要处理的产品交付。在实物产品的情况下,我们可能要通知一些航运伙伴。在虚拟产品的情况下,我们可能要产生类似于票据,或其他近似的产品。为了这种灵活性,我们将实现某种接口IShippingProvider,我们将创建两个简单的实现:一个是发送电子邮件通知托运人,另一个会产生票据。
- 管理后台,使管理员能够管理客户以及订单。
(注意: 关于嵌入截图, 出现一些截图太小,你只需拖动图片到您的浏览器的地址栏中,查看其原始大小的图片。)
好吧,就让我们开始创建Orchard Webshop Module(网店模块)!
第1部分 - 简介(本篇)
第2部分 - 配置您的Orchard开发环境
第3部分 - 创建Orchard.Webshop模块项目
第4部分 - 创建ProductPart
第5部分 - 创建和渲染ProductCatalog的内容类型
第6部分 - 创建购物车服务和控制器
第7部分 - 渲染ShoppingCart和ShoppingCartWidget
第8部分 - 注册新客户与网站
第9部分 - 创建订单和与PSP通信
第10部分 - 客户和订单管理后端
第11部分 - 在内容列表中定制产品和类别的:DisplayTypes
第12部分 - 与ERP系统集成
第13部分 - 处理运费和税费
第14部分 - 实施付款方式:Google Checkout
第15部分 - 实施付款方式:PayPal
点击这里查看演示!
【翻译】从头开始编写一个Orchard网上商店模块(1) - 介绍相关推荐
- 从头开始编写一个时间序列数据库
作者 | Ryo Nakao 译者 | 王雪迎 责编 | 张红月 出品 | CSDN(ID:CSDNnews) 本文翻译自Ryo Nakao 的个人博客(https://corecursive.c ...
- 如何用FFmpeg编写一个简单播放器详细步骤介绍
如何用FFmpeg编写一个简单播放器详细步骤介绍(转载) FFMPEG是一个很好的库,可以用来创建视频应用或者生成特定的工具.FFMPEG几乎为你把所有的繁重工作都做了,比如解码.编码.复用和解复用. ...
- 从头编写操作系统_从头开始编写一个美丽的网站
从头编写操作系统 作为流行教程"从头开始设计漂亮的网站"的续篇,我们将把漂亮的设计转换为有效HTML / CSS网站. 即使我们使用了960.gs模板,我们也不会使用其CSS框架来 ...
- linux的静态编译elf无法调试,[翻译]自己动手编写一个Linux调试器系列之4 ELF文件格式与DWARF调试格式 by lantie@15PB...
自己动手编写一个Linux调试器系列之4 ELF文件格式与DWARF调试格式 by lantie@15PB 在上一节中,你已经听说了DWARF调试格式,它是程序的调试信息,是一种可以更好理解源码的方式 ...
- Orchard编写网上商店模块2
其他操作按照http://www.ideliverable.com/blog?page=3博客中步骤操作就可以 下面说说需要注意的几点: widget的创建 在Models下添加一个继承自Conten ...
- 用VUE创建一个小型网上商店(一、创建项目)
一.开始一个VUE项目之前 1. 开始之前先了解一下VUE相关的概念性的东西吧 Vue.js 官方文档上这样介绍:简单小巧的核心,渐进式技术栈.它提供了Web开发中常见的高级功能,如: 解耦视图与数据 ...
- 编写一个C语言程序 实现自我介绍,用c语言编程实现,别出心裁的情侣拍照
满意答案 /********************************************************************************************** ...
- 怎样编写一个Photoshop滤镜(1)
在很久前我曾经写过一篇文章简要讲述了 Photoshop 的滤镜开发的基本概念,并描述了滤镜和 PS之间的协作关系,也提供了一个雨滴效果滤镜的 Demo.但是缺少源代码.而且我们将要产生疑问,我们如何 ...
- Java黑皮书课后题第6章:*6.21(电话按键盘)国际标准的字母/数字匹配图如编程练习题4.15所示。编写一个测试程序,提示用户输入字符串形式的电话号码。程序将字母(大写或小写)翻译成数字
6.21(电话按键盘) 题目 题目描述与运行示例 破题 代码 题目 题目描述与运行示例 6.21(电话按键盘)国际标准的字母/数字匹配图如编程练习题4.15所示,编写一个方法,返回给定大写字母的数字, ...
最新文章
- 视频大变革:需要技术,也需要情怀
- 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 在 PathClassLoader 和 BootClassLoader 之间插入 DexClassLoader )
- java学习之类型转换与越界
- mysql启动报错解决-1
- js平滑滚动到顶部,底部,指定地方 animate()
- C++前置声明的一个好处与用法
- PostgreSQL学习笔记YY(2)--Ubuntu下使用DDD调试查看源码(原创)
- 使用 TensorFlow 做文本情感分析
- Python内置的服务器的使用
- js request 应用举例
- 软件定义网络带来新的自动化优势和挑战
- 陶哲轩论文解析:从特征值到特征向量
- flutter doctor --android-licenses
- 深度信念网络python_深度信念网络python
- 笔记本过热、电脑cpu过热、限制CPU运行功率上限,轻松设置解决过热
- Windows 修改MAC地址
- Google Earth Engine(GEE)——在线统计美国人口和住房数据(以ee.Reducer.sum().repeat().group列表形式呈现)
- xp远程登录linux,Linux操作系统下如何远程登录XP桌面
- 信息化应用场景,华为云CDN能为企业做什么?
- 一念起,万水千山;一念灭,沧海桑田。