1. 新建一个项目如Aqioo.Article

2.修改默认命名空间为Aqioo.Modules.Article,程序集名称不变

3.修改ArticleModule.cs的默认命名空间为Aqioo.Modules.Article

4.ArticleModule.cs继承IAqiooModule->引用项目Aqioo->using Aqioo.Infrastructure;

5.引用System.Web.Routing->using System.Web.Routing;引用System.Web.Mvc(2.0版本的)->using System.Web.Mvc;

6.编写构造函数

        public ArticleModule(IUnityContainer container)
        {
            this.container = container;
        }
View Code

7.在db_AqiooPlat数据库的aqioo.Module表中添加一条记录(SiteID:相同;ModuleType一定要填写正确,否则程序会报错)如:Aqioo.Modules.Wiki.WikiModule,Aqioo.Wiki一个是命名空间,一个是程序集,这几如果没有匹配正确,程序运行时会报错;添加记录后一定要让网站项目引用此项目,否则也会报如下错误(如果你增加一个项目不被网站引用也没有用)

8.加好之后,新建Controllers文件夹->新建一个Controller如:ArticleController.cs-->继承Controller-->using System.Web.Mvc

9.添加一个方法

 public ActionResult Index()
        {
            //return Content("nihao,我这是测试");
            return View();
        }
View Code

10.在网站Views目录下添加一个文件夹如:Article,添加一个view(做测试用)输入:http://localhost:2360/Wiki.html

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Routing;
using System.Web.Mvc;

using Aqioo.Infrastructure;
using Microsoft.Practices.Unity;


namespace Aqioo.Modules.Article
{
    public class ArticleModule : IAqiooModule
    {

        private readonly IUnityContainer container;

        public ArticleModule(IUnityContainer container)
        {
            this.container = container;
        }

        #region IAqiooModule Members

        public void Initialize()
        {
        }

        public void Unload()
        {
            throw new NotImplementedException();
        }

        public void RegisterRoutes(RouteCollection routes)
        {
            string[] controllerNamespaces = new[] { " Aqioo.Modules.Article.Controllers" };

            routes.MapRoute(
            "Aticletest",
            "Aticletest.html",
            new { controller = "Article", anonymous = true, action = "Index" },
            null,
            controllerNamespaces
            );
        }

        public void RegisterCatchAllRoutes(RouteCollection routes)
        {
            
        }

        public void RegisterFilters(IFilterRegistry filterRegistry)
        {
        }

        public void RegisterModelBinders(ModelBinderDictionary modelBinders)
        {
        }

        public void RegisterWithContainer()
        {
        }

        #endregion
    }
}
View Code

 

posted on 2014-07-31 10:28  随心所意  阅读(159)  评论(0)    收藏  举报