Orchard作为一个内容管理系统(CMS),内容管理部分当然是其中最核心的东西。在Orchard中的任何数据都可以把它理解为内容(Content)。页面是内容、博客是内容、文章也是内容。整个网站就是由这些不同类型的内容项(Content Item)构成的。对这些不同内容的类型定义就是内容类型(Content Type)。而内容类型则是通过若干个不同的内容部件(Content Part)组成。这些内容部件都是可以跨类型重用的东西,每一个内容部件都实现了从UI层到数据库层的完整封装。正是由于Orchard这种对内容的组织,我们可以很方便的构造出一种新的类型。如:我们需要做一个产品展示页面,只需要定义一个产品类型(Product Type)。在这个产品类型中我们只用定义一个产品特有内容部件(Product Part,包含价格、品牌等信息),并添加一个路由部件(Route Part,可指定相应产品的名称和详情页地址)、一个文本部件(Body Part,可提供一个富文本输入框,用做产品信息描述)即可。此外,我们还可以添加标签部件(Tags Part),评论部件(Comments Part)等来丰富此产品类型。一旦有了这个产品类型的存在,我就可以很方便的通过后台来维护产品内容了。
Orchard中内容组织结构图示意图

Orchard中博文类型的Part分解图

由上图就可以看出一片博文其实是由多个内容部件组成的。
Orchard中一些常用的内容部件
Route Part:路由部件,可为内容提供路由支持即可通过指定Url访问相应内容。
Body Part:文本部件,可提供一个富文本编辑器的功能。
Comment Part:评论部件,可提供评论功能。
Tags Part:标签部件,可提供内容的标签定义,实现全站的标签检索功能。
Common Part:通用部件,提供所有者信息。
Publish later Part:延迟发布部件,提供内容延迟发布功能。
参考文档:
Orchard中的基本概念:http://www.orchardproject.net/docs/Basic-Orchard-Concepts.ashx
==========================================
作者:二十四画生
转载请注明来源于博客园——二十四画生的Blog,并保留有原文链接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)