1、下载Orchard sourcrs资源文件,同时也可以去百度下载中文包 资源地址(https://github.com/OrchardCMS/Orchard/releases/download/1.10/Orchard.Source.zip)中文包地址以及说明(http://www.cnblogs.com/zgqys1980/archive/2012/06/15/2550951.html)

2、解压好资源文件,在根目录有build.bin命令脚本文件,打开即可。此时就能打开运行

3、创建HelloWord过程。

  3.1、打开Orchard命令行。Orchard命令行在Orchard.Web\bin\Orchard.exe位置。

  3.2、启用了Code Generation,再Orchard命令行输入feature enable Orchard.CodeGeneration。当Orchard.CodeGeneration启用以后,就可以在命令行中来创建模块了。

    codegen controller <module-name> <controller-name>

    创建一个controller类

    codegen datamigration <feature-name>

    创建一个数据文件清单

    codegen module <module-name> [/IncludeInSolution:true|false] //     codegen module HelloWord

    创建一个模块

    codegen theme <theme-name> [/CreateProject:true|false][/IncludeInSolution:true|false][/BasedOn:<theme-name>]

    创建一个皮肤

  3.3、为模块添加路由Routes.cs

    

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using Orchard.Mvc.Routes;
    using System.Web.Routing;
    using System.Web.Mvc;

    namespace MyCompany.HelloWorld
    {
    /// <summary>
    /// 定义模块所用到的路由,在Orchard中定义路由需要实现IRouteProvider接口
    /// </summary>
    public class Routes : IRouteProvider
    {
    #region IRouteProvider 成员

    public IEnumerable<RouteDescriptor> GetRoutes()
    {
    return new[]
      {
    new RouteDescriptor
    {
    Priority = 5, //优先级(作用暂不清楚,留着以后研究)
    Route = new Route
    (
    "HelloWorld", //路由的 URL 模式。
    new RouteValueDictionary //要在 URL 不包含所有参数时使用的值。默认执行HomeController中Index action。
    {
    {"area", "HelloWord"},
    {"controller", "Home"},
    {"action", "Index"}
    },
    new RouteValueDictionary(), //一个用于指定 URL 参数的有效值的正则表达式。
    new RouteValueDictionary {{"area", "HelloWord" } }, //传递到路由处理程序但未用于确定该路由是否匹配特定 URL 模式的自定义值。这些值会传递到路由处理程序,以便用于处理请求。
    new MvcRouteHandler() //处理路由请求的对象。
    )
    }
    };
    }

    public void GetRoutes(ICollection<RouteDescriptor> routes)
    {
    foreach (var routeDescriptor in GetRoutes())
    {
    routes.Add(routeDescriptor);
    }
    }

    #endregion
    }
    }

Orchard学习笔记的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

随机推荐

  1. SpringMVC 对比 struts2

    一.SpringMVC的入口是Servlet,而struts2的入口是filter 二.SpringMVC会稍微比struts2 快些.SpringMVC是基于方法设计的,而struts2是基于类,每 ...

  2. linux下进程突然断掉后的日志查询

    最近写了一个实现监控的服务,可某天去看的时候进程突然木有了,这就捉急了,好好的是啥原因了呢?不会有人不小心把偶的进程关掉了把! 后发现一个linux日志文件:/var/log/messages 打开文 ...

  3. 用户、角色、权限三者多对多用hibernate的一对多注解配置

    用户.角色.权限三者多对多用hibernate的一对多注解配置 //权限表@Table(name = "p")public class P { @Id @GeneratedValu ...

  4. 兼容各版本浏览器,封装原生Js获取ClassName

    web前端开发工作中常常会用到获取元素的className,用jQuery的$(".class")方法也可以获取className,但是有时候牵扯到数据而影响的加载顺序的原因会获取 ...

  5. 第10章 嵌入式Linux的调试技术

    printk函数运行在内核空间,printf函数运行在用户空间.也就是说像Linux驱动这样的Linux内核程序只能使用printk函数输出调试信息.printk函数在控制台(也称终端)显示消息是通过 ...

  6. IE7下如何判断复选框是否被选中(利用jquery)

    var checkM; $(".rate-mainL .checkM").click(function(){ var checkM=$("input[name='chec ...

  7. JUnit4参数的使用

    用JUnit4进行参数化测试 参数化测试是一个JUnit 3不具备的功能. 基本使用方法 @RunWith 当类被@RunWith注解修饰,或者类继承了一个被该注解修饰的类,JUnit将会使用这个注解 ...

  8. PHP 爬取网页中表格数据

    public function spider_j($page) { $url="http://aaa/bbb".$page."_0/"; $fcontents= ...

  9. JAVA(3)

    接口注意事项: 1.接口不能被实例化 2.接口中所有的方法都不能有主体  (不能有{ }) 3.一个类可以实现多个接口 4.接口中可以有变量<但变量不能用private和protected修饰& ...

  10. onTouch与onClick冲突解决方法

    view.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent ...