Orchard - 模块主要项目结构

以Orchard.WebShop为例

  1. Models: 当前模块中所提供的独有的内容部分的领域模型类和对应的数据记录类。继承于ContentPartRecord,约定以Record结尾,比如ProductRecord, 属性成员以virtual修饰(Nhibernate持久化类的要求)
  2. public class ProductRecord : ContentPartRecord
        {
            public virtual decimal Price { get; set; }
            public virtual string Sku { get; set; }
        }
    View Code
  3. Drivers: 相当于内容部件的Controller, 继承自ContentPartDriver<TContent>
  4. Handlers: 存放当前模块特有的内容部分的数据相关的处理(如数据存取、索引和与其他内容部分的相关性等)程序。继承自ContentHandler。
  5. Services: 用于为控制器提供数据和其他领域模型间的逻辑操作的服务程序。继承自IDependency。
  6. Migration.cs: 在安装和升级模块时,提供数据库结构的构建和更新功能。也告诉Orchard创建表和字段类型。
  7. Module.txt: 描述当前模块的元信息(名称、作者和版本等信息)的文本文件。
  8. Placement.info: 述当前模块中所提供的 部件(Part) 应该在文档中所处的位置定义的 XML 文件。
posted on 2014-02-16 19:07  buyone  阅读(331)  评论(0编辑  收藏  举报