可見Orchard運行於ASP.NET之上,使用了幾個包括包括ASP.NET MVC在內的開源框架或類庫。位於Orchard最底層的是Orchard框架(Orchard.Framework程序集),其上是核心模塊(Core Modules)以及來自官方或非官方的其餘模塊(Modules)。實際上咱們能夠在任何一層上進行開發,一般咱們是在Modules層開發,建立新的Module或Theme或修改已經存在的Module或Theme。
2、Orchard基礎
Orchard CMS基於現有的框架和庫構建,包括ASP.NET MVC,NHibernate,Autofac,Castle等。
3、Orchard框架(Orchard.Framework程序集)
Orchard.Framework程序集位於Orchard最底層,它包含應用程序引擎以及不適合分離到模塊的功能。這些都是最基礎的東西,甚至連最基本的模塊將不得不依賴它。你能夠把它看做是Orchard的基礎類庫。
4、Orchard核心模塊(Orchard.Core項目及Orchard.Core程序集)
Orchard.Core項目中包含了一組Orhcard運行所必須的模塊。其它模塊能夠安全地依賴到這些模塊上,由於這些模塊老是可用的。好比 feeds,navigation,routable模塊。固然,就像上面所說,咱們能夠基於Orchard的任何一層進行開發,若是有必要,咱們徹底能夠本身來設計"Core"。
5、模塊(Moduls)
Orchard默認發行版包含了一些像blogging、pages的內置模塊,而且也能很方便的建立第三方模塊。
模塊就是用於擴展Orchard的包含module.txt文件的ASP.NET MVC Area。
模塊一般包含事件處理程序(event handlers),內容類型(content types)和它們的默認渲染模板以及一些管理界面(Admin UI)。
對模塊".csproj"文件或".csproj"引用文件的修改都能使模塊自動被動態編譯。也就是說能夠不將模塊編譯成靜態程序集甚至能夠不使用Vistual Studio來建立或編輯模塊。
6、主題(Themes)
主題可讓Orchard用戶自定義站點顯示界面,量身定製他們想要的站點風格。主題還能夠有針對性的對Orchard模塊所提供的任何模板進行樣式重寫、甚至是改變圖像、佈局等。