Orchard基本信息

Orchard基本概念快速理解 1. 首次深入Orchard应了解的基本知识: 用户的角色 查看的文章来自: http://www.orchardch.com/Blog/20120503063810 用户:     normal user(reader/visitor/guest) 管理员:    administrator 所有管理权限 设计人员:   designer 可以修改网站的外观   主题文件   布局 阅读详情

Orchard简介

Orchard是一个以微软为主导的开源CMS项目,它允许使用者在Asp.Net平台上快速建立网站,并且提供扩展框架能够允许定制人员通过模块和主题等增加额外的内容,Orchard能够建设出复杂的内容管理系统,它提供了强大的模块化建设模式,通过组件的重用将系统建设成本最小化,帮助用户减少编 码,从而吸引非技术人员的关注。

 

Orchard项目建立于2010年3月并与2011年1月发布正式版1.0V,是微软“Oxite”开源CMS系统的继承者,2010年12月微软将Orchard从自己的CodePlex迁移到Outercurve基金会,并承诺提供三年的技术支持该项目。Orchard使用了当今.Net平台最先进的技术构架,使之成为该平台中最新、最先进的开源CMS系统之一。

 

存在意义

    建立一个CMS网站(内容管理系统)是不同于建立一个普通的web站点:它更像是建立一个应用程序容器。设计这样一个系统时,必须建立一流的可扩展性功能。这必需是一个非常开放式的构架,但是一个开放性的系统可能会影响应用程序可用性的挑战,在系统中的需要与未知的未来模块的组合,包括在用户界面级别,编排所有这些小零件,让互不知道的彼此成一个连贯的整体,是Orchard是关键。

 

目标:

提供强大的模块化建设模式,通过组件的重用将系统建设成本最小化,帮助用户减少编码,从而吸引非技术人员的关注

 

Orchard解决方案中各个项目的作用

------基于Orchardv1.1版的源代码

 

Modules

 

Modules目录是一个VS解决方案目录,它包含了Orchard的模块项目。所有的模块项目都是一个ASP.NETMVC web应用程序项目。

 

Modules\Lucene

 

Lucene模块可以让站点使用Lucene.NET进行索引。索引模块利用此搜索引擎,实现网站的全文检索。

 

Modules\Orchard.ArchiveLater

 

ArchiveLater模块支持按计划归档功能。

 

Modules\Orchard.Blogs

 

Blogs模块提供了管理、呈现博客和博客文章的功能。

 

Modules\Orchard.CodeGeneration

 

CodeGeneration模块提供了创建Orchard组件的命令行工具。

 

Modules\Orchard.Comments

 

Comments模块提供了管理、呈现评论的功能。此评论功能以ContentPart形式提供,可以适用于各种内容。

 

Modules\Orchard.ContentTypes

 

ContentTypes模块可以提供创建和修改内容类型的管理界面。

 

Modules\Orchard.DesignerTools

 

DesignerTools模块包含了一个可以帮助web开发人员开发主题的工具。这个工具可以显示所有当前的Shap和一些信息,有助我们自定义主题和模板使用。

 

Modules\Orchard.Email

 

Email模块提供了邮件发送的功能。

 

Modules\Orchard.Experimental

 

Experimental模块提供了以下类型的调试工具:

 

分析工具:这个工具可以帮助我们配置Orchard应用。

 

Web命令行工具:这个工具可以让网站管理员在Web界面中执行Orchard命令行的功能。

 

测试列表工具:这个工具可以定义一些内容帮助测试列表功能。

 

Modules\Orchard.ImportExport

 

ImportExport模块提供导入导出Orchard内容数据的功能。

 

Modules\Orchard.Indexing

 

Indexing模块可以提供全站索引。通过此模块生成索引供搜索模块使用,从而实现全站搜索的功能。该模块需要依赖于Lucene模块。

 

Modules\Orchard.jQuery

 

jQuery模块包含了jquery脚本和一些相关的脚本库。

 

Modules\Orchard.Lists

 

Lists模块提供了一个预设容器的功能。

 

Modules\Orchard.Localization

 

Localization模块提供了本地化内容项的功能。

 

Modules\Orchard.Media

 

Media模块提供了管理和呈现多媒体的功能。它当前仅支持图片文件。文件存储在当前Orchard系统中,可以是一个物理文件系统或者用Azureblob存储。

 

Modules\Orchard.MediaPicker

 

MediaPicker模块提供了一个在Html编辑器中浏览、上传和选择图片的功能。

 

Modules\Orchard.Messaging

 

Messaging模块包含了消息的设置功能。

 

Modules\Orchard.Migrations

 

Migrations模块提供了根据Record类创建和升级数据结构的命令行工具。

 

Modules\Orchard.Modules

 

Modules模块提供了网站管理员管理模块安装、启用等功能的管理界面。

 

Modules\Orchard.MultiTenancy

 

MultiTenancy模块可以是多个逻辑站点运行在一个物理的web站点上。这提高了在一台服务器或托管主机上的站点密度。

 

Modules\Orchard.Packaging

 

Packaging模块提供将模块打包为OPC文件格式的功能。

 

Modules\Orchard.Pages

 

Pages模块提供了管理和呈现CMS页面的功能。它包含了一个预定页面内容类型。

 

Modules\Orchard.PublishLater

 

PublishLater模块支持内容以草稿形式创建并按计划时间发布的功能。

 

Modules\Orchard.Recipes

 

Recipes模块支持Orchard网站自动配置的功能。

 

 

 

Modules\Orchard.Roles

 

Roles模块提供一个分配角色给用户的功能。它还提供了一个设置默认角色给其他模块定义权限集的功能。

 

Modules\Orchard.Scripting

 

Scripting模块可以提供一个执行简单脚本语言的功能。

 

Modules\Orchard.Scripting.Dlr

 

Scripting.Dlr模块可以提供一个执行DLR脚本语言的功能。

 

Modules\Orchard.Search

 

Search模块可管理搜索索引和提供用户查询Orchard站点的接口。

 

Modules\Orchard.Setup

 

Setup模块提供初始化安装Orchard应用程序的功能。这个模块在安装完成后将自动禁用。

 

Modules\Orchard.Tags

 

Tags模块提供管理和呈现所有内容标签的功能。

 

Modules\Orchard.Themes

 

Themes模块提供了一个设置Orchard应用程序主题的管理界面。

 

Modules\Orchard.Users

 

Users模块提供了管理用户的功能。

 

Modules\Orchard.Warmup

 

Warmup模块提供一种在应用程序初始化过程中生成静态网页的功能。

 

Modules\Orchard.Widgets

 

Widgets模块提供了Orchard小部件添加到页面上的管理界面。

 

Modules\TinyMce

 

TinyMce模块提供了富文本编辑器的功能。

 

Specs

 

Specs文件夹包含了以下项目:

 

Orchard.Profile:提供显示网站运行情况和性能的功能。

 

Orchard.Specs:包含编写使用集成测试specflow风格。特定功能信息包含在*.Feature文件中。

 

Tests

 

Tests文件夹包含了以下项目:

 

Orchard.Core.Tests:是一个测试Orchard核心功能的测试项目。

 

Orchard.Framework.Tests:是一个测试Orchard框架的测试项目。

 

Orchard.Tests.Modules:是一个测试Orchard模块的测试项目。他下面的子目录对应不同的Orchard模块。

 

Orchard.Web.Tests:是一个测试Orchard网站的测试项目。

 

Themes

 

Themes文件夹包含了Orchard主题项目,可以在此项目中添加新的主题,不同的主题对应于不同的子目录。

 

Tools

 

Tools文件夹包含了用于编译Orchard解决方案的工具的源代码。它也包含了Orchard项目的命令行工具,你可以用它来运行Orchard中定义的一些命令以自动执行管理任务。

 

Orchard.Core

 

Orchard核心功能项目包含Orchard中核心模块和内容类型,如:feeds部件、主题部件、导航部件、通用部件、路由部件和内容文本部件。

 

Orchard.Framework

 

Orchard框架项目包含Orchard所使用的各种类库。如:缓存、集合、命令、内容管理、数据访问等等。同时也包含了大量的接口定义和属性定义。

 

Orchard.Web

 

Orchard.Web项目是一个MVC应用程序项目。这是你应用程序实际运行的项目。它是整个解决方案的启动项目。它包含了OrchardCMS系统的核心平台的程序集文件,是Orchard主机应用程序。

 

其他注释

 

Orchard.Web项目需要作为整个项目的启动项目(例如:当你使用VS调试功能时)。Orchard.Web动态加载所有Orchard模块并发现模块的扩展(MVC路由,管理页面等等)。

 

Modules文件夹下的项目在物理文件夹“Ochard.Web\Modules”下。这些模块允许包含ASP.NET视图(.aspx,.ascx和其他文件)和静态内容。

 

Orchard.Web项目引用的模块,在编译的时候自动将程序集文件复制到Bin目录下。Orchard.Web没有依赖的模块组件。因为在Orchard.Web项目运行的时候不知道有哪些模块会被动态加载。

 

Modules文件夹下的项目引用了Orchard的项目,这可以让Orchard模块访问Orchard的服务。

 

关于核心模块

 

本节讨论一些关于核心模块创建的决策问题。第一个问题是:为什么是核心模块的模块?因为在设计Orchard阶段它被确定为扩展其他模块所必需的核心框架。

 

例如:Common模块介绍BodyAspect(内容的作者)。一个核心的概念是Common模块可以给其他很多内容类型使用,如:博客文章、页面等等。它可以实现到Orchard框架dll中,让所有模块都依赖于它。但是这就得不到作为一个模块的好处,如能挂接处理器、驱动器、视图、路由等等。这样做也和ASP.NETMVC区域有关,一个区域需要在一个文件夹下。

 

将核心模块从框架层中分离并独立成一个单独的dll,这是一个正确的观念。这类似一个non-monolithic操作系统。在一个地方实现核心功能,在另一个地方实现系统模块,并提供大量的接口用于扩展更高级的模块。

 

第二个问题是:为什么是核心模块的核心模块。当它被作为核心模块的概念实现时,它有可被其他模块永久使用。如:评论模块。(评论模块并不是一个核心模块,它可以算是一个基础模块)

 

需要处理的问题是依赖关系。在Orchard中,模块在Modules目录下可以被禁止和卸载,或通过其他途径更新。Orchard模块应该尽量避免对其他模块的依赖,尽量在后台通过内容部件来定义类型。页面和博客文章分别属于Pages和Blogs模块,并没有引用评论和标签模块,但是它们有可能添加了评论或标签功能到页面和博文文章中。这种分离行为是确保由底层内容类型架构实现,而不是由其他模块间直接引用实现的。

 

然而,核心模块是Orchard框架的一部分,它可以被所有模块依赖。核心模块将由Orchard开发团队发布,并作为Orchard框架的组成部分。其他模块可以依赖他们,并直接访问其公共外观。

Orchard学习目录 这段时间在断断续的研究Orchard,缕了一下大致学习框架: 基础篇: Orchard(一):介绍 Orchard (二):简单配置 Orchard(三):搞清来龙去脉(1)-初探 Orchard(三):搞清来龙去脉(2)-Widgets Orchard(三):搞清来龙去脉(3)-Orchard 是怎么运行的? 扩展篇: Orchard(四):创建Module --Hello Wo 阅读详情

相关推荐

【STM32】STM32 CANFD外设的几种消息接收过滤模式

在控制器区域网络(CAN)系统中,正确配置消息过滤器对于有效管理网络通信至关重要。特别是在使用Flexible Data-rate Controller Area Network(FDCAN)时,选择合适的过滤器类型可以大大提高网络效率和消息处理速度。

林愿留的博客 6226

推荐一个开源内容管理系统:Orchard Core

推荐一个开源内容管理系统:Orchard Core OrchardCore.Samples Modules and Multi-Tenancy in ASP.NET samples using the Orchard Core framework 项目地址: ht...

gitblog_00097的博客 566

差分逻辑电平——LVDS、CML、LVPECL、HCSL互连

首先了解差分逻辑电平结构,也包括单端逻辑电平常见的逻辑电平_常用的逻辑电平-优快云博客注:ECL >> PECL >> LVPECL演变而来;QDR(Quad Data Rate):四倍数据倍率本文章只涉及差分逻辑电平:LVDS 、LVPECL、CML (高速)(最常用)在任何给定的系统设计中,必须设计驱动器侧和接收器侧之间的时钟逻辑转换。通过在它们之间增加衰减电阻和偏置电路来将一个差分时钟转换为其他类型的差分逻辑,来衰减摆幅电平并重新偏置共模输入接收器。

weixin_45365488的博客 4万+

1、Orchard简介

一、沉默是金        Orchard是微软ASP.NET项目组一群大拿写的一个开源的内容管理系统CMS(就是创造出ASP.NET和MVC框架的那群人,顶礼膜拜!)。充分体现了微软什么领域都要伸手的特点。这个CMS可以说是.net框架下最牛叉的内容管理系统了,几乎你想有的功能,里面都有了。    在国外Orchard用的很多,但是国内并没有火起来。我个人觉得,一是因为英文好、编码水平高的同学,...

hofast的博客 7129

Windows安装ros2(Jazzy版本+win10/win11)-1.配置windows终端

更高版本的terminal可能设置里更加丰富, 有默认以管理员身份启动的选项等,可自行配置。打开微软应用商店, 在其中搜索并下载 Terminal 即可(注意别挂梯子)下载并安装, 安装的位置自行替换,建议别放到系统盘中。点击任务栏中的搜索, 输入store。

weixin_48398592的博客 1454

大漠多线程增强版:解决窗口消失、坐标错乱与识别卡死

多线程环境下窗口自动化面临的核心挑战,本质是GDI资源非线程安全、HWND生命周期失控及图像引擎状态污染三大底层问题。Windows GUI编程中,跨线程共享hDC、缓存失效的窗口句柄、OpenCV静态Mat等设计缺陷,导致FindPic失败、GetCursorPos异常、坐标跳变等典型故障。本方案通过线程局部存储(TLS)重构资源生命周期、WinEventHook+心跳探测构建实时窗口状态链、ABI对齐的多语言内存契约,实现稳定低延迟的并发UI识别与控制。适用于游戏多开监控、电商RPA、后台UI状态采集等

weixin_30561177的博客 477

Orchard(一):介绍

项目介绍   Orchard是一个免费和开源的社区交流项目,致力于在ASP.NET平台开发应用程序和可重用性组件。它将创建用于ASP.Net应用和扩展的共享组件,以及修改这些组件以便使其应用于终端用户,脚本人员和开发者。使用的开源协议是OSI认证的 New BSD license。 项目目标 基于.Net, 能够吸引终端客户,脚本人员和开发人员的应用程序;一个可复用的组件集合并能够简单建立这

邓福勇 4953

Win11右键菜单显示更多选项设置默认展开方法

在Windows 11操作系统中,用户可能会发现右键点击桌面空白处时,弹出的菜单中仅显示“显示更多选项”,而并非直接展示所有可用的选项。这对于希望快速访问特定功能的用户来说,无疑增加了一些不便。为了优化这一体验,本文将介绍两种简单的方法,帮助用户设置Win11右键菜单,使其默认展开包含的所有选项。通过上述两种方法,用户可以轻松地将Win11右键菜单设置为默认展开所有选项,从而提高工作效率和便捷性。希望这篇文章对你有所帮助!

nntxthml的博客 1万+

(一)学习了解OrchardCore笔记——开篇:基于asp.net core的OrchardCore

  想深入了解OrchadCore源码许久了,但是读源码的时候遇到很多问题而网上的参考资料太少了(几乎都是OrchadCms不带OrchardCore的),现在解决得差不多了,做下笔记方便自己查看,有错误之处也请大家帮忙指出,谢谢。   OrchardCore是一个基于asp.net core的cms(废话),其结构类似于asp.net core(为啥说类似我也不知道,asp.net core的源码我只看了一部分,似是而非吧)。因此,我将直接从asp.net core的角度来解析OrchardCore,从.

marcushbs的博客 1431

SRC漏洞挖掘实战:从攻击面管理到业务逻辑漏洞的精准狩猎

在网络安全领域,漏洞挖掘是识别和利用软件系统中安全弱点的核心实践。其基本原理在于通过系统化的方法,识别和评估一个应用或系统的攻击面,并从中定位安全防护的薄弱环节。这项技术的价值在于能够主动发现潜在风险,防患于未然,对于保障企业数字资产安全至关重要。典型的应用场景包括对Web应用、移动端API以及各类在线业务系统的安全性评估。在实际的漏洞挖掘,尤其是针对安全应急响应中心(SRC)的实战中,高效的策略往往聚焦于**边缘资产**的发现与利用,以及对**业务逻辑漏洞**的模式化测试。掌握这些经过验证的思路,能帮助安

babing2770的博客 414

【YOLOv11】087、YOLOv11多任务学习:检测、分割、分类联合学习

摘要: 工业质检场景中,多任务模型(检测、分类、分割)的需求日益增长。针对边缘设备部署的挑战,本文提出基于YOLOv11的多任务学习方案。通过共享主干网络和设计分支头(检测、分割、分类),实现高效推理;采用动态权重平衡策略解决多任务损失不平衡问题;并优化数据流处理(支持部分标注)和推理剪裁(按需启用分支)。实验表明,该方法在Jetson Orin上帧率提升3倍,内存占用减少40%,为工业质检提供了轻量高效的解决方案。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 446

OrchardCore

果园核心¶ Orchard Core 是在ASP.NET Core上重新开发的Orchard CMS。 Orchard Core 包含两个不同的目标: Orchard Core Framework :用于在 ASP.NET Core 上构建模块化、多租户应用程序的应用程序框架。 Orchard Core CMS:建立在 Orchard Core 框架之上的 Web 内容管理系统 (CMS)。 重要的是要注意框架和 CMS 之间的差异。一些想要开发 SaaS 应用程序的开发人员只会对模块化框架感兴趣。其他

kalvin_y_liu的博客 897

【WorkBuddy专栏58】腾讯为什么要「自己打自己」——7款AI智能体产品全景对比与「赛马」逻辑深度拆解

【WorkBuddy专栏57】你的左侧空间不是「日任务清单」——工作空间才是 WB 变聪明的核心秘密

AI人人懂 679

Orchard 功能简介

Core modules Common 此模块定义了3个Part和一个Field,它们是Common Part, Body Part, Identity Part, and Text Field. Common Part: 定义了Content Item创建、发布、修改的时间及所有者ID Body Part: 定义了富文本编辑器,可以通过设置来选择使用哪种编辑器,默认是html...

weixin_30367169的博客 286

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Orchard基本概念

本文链接:http://www.cnblogs.com/souther/p/4531273.html Orchard是个CMS(这不是废话么),它的首要目标是帮助你从现有的碎片建设网站。这些碎片大小不一、形状迥异,如果你想高效地利用它们,那你首先得很好的理解它们。本文将对深入解释这些碎片的名称与功能。 常规CMS定义 内容(content) CMS中的C就是指的内容,这也就是说C...

dengfang2372的博客 235

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Orchard core 介绍

1、Orchard基础 Orchard CMS基于现有的框架和库构建,包括ASP.NET MVC,NHibernate,Autofac,Castle等。 2、Orchard框架(Orchard.Framework程序集) Orchard.Framework程序集位于Orchard最底层,它包含应用程序引擎以及不适合分离到模块的功能。这些都是最基础的东西,甚至连最基本的模块将不得不依赖它。你可以...

Captain-G的博客 2058

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

1 Orchard 入门篇-Orchard 基本概念

引言:最近学习Orchard,被它的各种机制彻底迷上了,有点相见恨晚的感觉,学习起来完全停不下来,工作10多年没写过1篇博客的我都忍不住开通博客,记录下自己使用Orchard做项目的点点滴滴。本系列连载将记录我在使用Orchard1.9.2制作一个真实项目的全过程,会更侧重予实践,Orchard的原理可以查看官方资料。 第一部分 入门篇 1.1 Orchard简介 Orchard是...

anlz96966的博客 670

[译]:Orchard入门——构建你的第一个Orchard网站

原文链接:Building Your First Orchard Site 文章内容基于Orchard 1.8版本 本文将逐步简要介绍Orchard提供的功能。如果你是第一次使用Orchard,本文将非常适合你。 Orchard入门 对于初次接触Orchard的人,我们提供以下一些关于Orchard资源和最新信息的链接: Orchard Beginner Orchard in...

dingze5250的博客 881

Orchard所含模块概述

Orchard 基本架构模型 Modules Core Orchard Framework ASP.NET MVC NHibernate Autofac Castle .NET ASP.NET IIS or Windows Azure  基本后面自己所创建的模型都应该引入orchard.framework

坚持奋斗,曙光终现 707

Orchard架构介绍

  在如何使用Orchard搭建敏捷个人的网站(2)中介绍了如何使用Orchard,但对于我们来说,更重要的是学习Orchard是如何架构的,如果我们自己编写一个类似应用该如何做。今天有空再次看看Orchard的其它内容,本篇介绍一下Orchard的一些架构方面的内容。Orchard内容较多,现在还只是了解一些皮毛,还有待进一步学习,放上来权当随笔记录。 Architecture ...

weixin_34247299的博客 479

如何开始使用Orchard训练演示模块

如何开始使用Orchard训练演示模块 1. 项目介绍 Orchard Training Demo Module 是一个专为学习Orchard Core CMS及Orchard 1.x设计的示例模块。该模块旨在引导开发者成为Orchard平台的熟练开发者。不仅适用于Orchard Core的新手,也提供了一个针对Orchard 1.x版本的学习路径。通过此模块,您可以深入了解Orchard的基本概...

gitblog_00015的博客 818

Orchard (二):简单配置

昨天下一了一个Orchard,Orchard(一):介绍。在Orchard官网看了一下如何跑这个项目。我写了一下实践经验。 部署   大体上有两种方式:WebMatrix和传统的“打开项目直接调试”。WebMatrix我没去管,直接用土办法“打开项目直接调试”   1.VS2010打开项目。   2.运行Orchard中的Orchard.Web项目,会弹出配置页面。让填写用户名密码,如

邓福勇 5703

Orchard学习 02、orchard 路由

Orchard对mvc路由重新做了包装,重写了asp.net的路由模块 一、路由模块类图 1、路由 Descriptor RouteDescriptor是对常规mvc路由的包装类,它的Route属性就是在mvc注册路由中使用的RouteBase类型。在Orchard中注册路由,应该用这种方式 newRouteDescriptor{ R...

aipaizi0273的博客 305

Orchard:打包和共享模块

前几篇文章我向大家介绍了几篇(Orchard: module开发基础技术知识)如何新建模块的文章,等你照着做完了,你可能会想着把你做的模块分享给大家Orchard提供一个模块打包的功能,你可以生成一个这个模块的打包文件。 打开Orchard.Packaging功能 你可以通过网站后台去打开这个功能,或者在命令行输入orchard&...

weixin_30782293的博客 133
下一篇: 页面使用iframe时,在css样式表中设置body宽度和直接在页面上设置其宽度的不同
code旅行者
博客等级 码龄15年 22粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值