201. Orchard学习 一、基础

一、项目介绍

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

Orchard 是由微软公司创建,基于 ASP.NET MVC 技术的免费开源内容管理系统:

  • 可用于建设博客、新闻门户、企业门户、行业网站门户等各种网站
  • 简单易用的后台界面
  • 性能稳定,功能齐全
  • 热拔插模块化架构提供超强可扩展性
  • BSD 协议授权,可用于商业闭源项目

 

二、Orchard主要的第三方资源和类库

参考:http://www.cnblogs.com/esshs/archive/2011/06/19/2084592.html

· Autofac 一款IOC框架,在Orchard中大量使用了依赖注入。

· Castle Orchard使用Castle Windsor实现生成类型代理和日志支持。

· Fluent Nhibernate 一个OR映射工具。

· Log4Net 日志记录工具。

· Lucene.Net 一个提供全文索引的搜索引擎。

· Moq 提供模拟对象技术,用于Orchard中单元测试。

 

三、Orchard 的项目结构

参考:http://www.cnblogs.com/esshs/archive/2011/06/18/2084297.html

clip_image001

      Orchard运行于.Net/ASP.NET之上,使用了几个包括ASP.NET MVC在内的开源框架或类库。

      最上三层属于Orchard的项目内容。

Orchard.Framework  最底层的支持库,包含Orchard所使用的各种类库。如:缓存、集合、命令、内容管理、数据访问等等。同时也包含了大量的接口定义和属性定义。

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

Modules : Modules目录是一个VS解决方案目录,它包含了Orchard的模块项目。通常我们是在Modules层开发,创建新的 Module/Theme或修改已经存在的Module/Theme。

 

四、模块(Moduls)

Orchard默认发行版包含了一些像blogging、pages的内置模块,并且也能很方便的创建第三方模块。

模块就是用于扩展Orchard的包含module.txt文件的ASP.NET MVC Area。 

模块通常包含事件处理程序(event handlers),内容类型(content types)和它们的默认渲染模板以及一些管理界面(Admin UI)。

对模块".csproj"文件或".csproj"引用文件的修改都能使模块自动被动态编译。也就是说可以不将模块编译成静态程序集甚至可以不使用Vistual Studio来创建或编辑模块。

 

六、主题(Themes)

主题可以让Orchard用户自定义站点显示界面,量身定制他们想要的站点风格。主题还可以有针对性的对Orchard模块所提供的任何模板进行样式重写、甚至是改变图像、布局等。

主题位于Orchard网站根目录下的Themes文件夹中,包含theme.txt文件。

 

七、租户/子站点(Tenants)

Orchard支持子站点,即一套程序、一个应用程序域部署多个不同域名或者相同域名不同Url前缀的站点。

posted @ 2014-10-29 15:47  学而不思则罔  阅读(366)  评论(0编辑  收藏  举报