2013-12-14 51 views
0

我有使用MVC4開發的OPAC搜索網站。它擁有多個MVC區域。這次我需要實施Orchard CMS或者與其整合。我有一個問題如何在果園模塊中使用這些相同的MVC區域,如果可以完成,那麼這些區域的路由如何?如何在果園內添加區域CMS模塊

任何建議,將不勝感激。

感謝

回答

1

果園模塊實現MVC領域,所以我想你應該每個區域遷移作爲一個獨立的果園模塊。

您可以通過實現IRouteProvider接口來爲每個模塊定義自定義路由。例如,以下代碼將控制器MyController中的動作MyAction映射到URL Foo/Bar。當然,您必須將MyModule替換爲您的果園模塊的名稱。

public class Routes : IRouteProvider 
{ 
    public void GetRoutes(ICollection<RouteDescriptor> routes) 
    { 
     foreach (var routeDescriptor in this.GetRoutes()) 
     { 
      routes.Add(routeDescriptor); 
     } 
    } 

    public IEnumerable<RouteDescriptor> GetRoutes() 
    { 
     return new[] 
        { 
         new RouteDescriptor 
         { 
          Priority = 20, 
          Route = 
           new Route(
           "Foo/Bar", 
           new RouteValueDictionary 
           { 
            { "area", "MyModule" }, 
            { "controller", "MyController" }, 
            { "action", "MyAction" } 
           }, 
           new RouteValueDictionary(), 
           new RouteValueDictionary { { "area", "MyModule" } }, 
           new MvcRouteHandler()) 
         }, 
         // Other routes... 
        }; 
    } 
}