2012-01-20 177 views
4

我需要我的MVC 3.0項目來支持模塊。按照模塊我的意思是有單獨的圖書館,其中包括模型的意見和controlers。其原因是具有可供多個應用程序使用的可重複使用的應用程序部分。MVC項目架構支持模塊

對我來說最好的辦法是將這些模塊作爲mvc應用程序 - 讓resharper,mvc visual studio插件工作。我的意思是intellisense,控制器導航,視圖和控制器創建屏幕等。如果我在普通類libraty中包含這些類,那麼功能就沒有了。

設置應用程序從「模塊」應用程序使用我的控制器非常簡單。

routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
      , new[] { "ModuleApplication1.Controllers" } 
     ); 

的問題是,視圖,控制器試圖加載不存在於當前的應用程序,但它在我的「模塊」的應用程序。更糟糕的是,這些觀點並沒有被編譯,也沒有嵌入到DLL中。我不想複製它們。我更喜歡從dll加載它們。如果它是可能的。

我承認,我是MVC的新手。

我錯過了什麼嗎?有沒有解決這個問題的方法?我的方法完全錯誤嗎?

回答

2

您可以使用MvcContrib便攜式區域,它們專爲此場景設計。

+0

它支持剃刀視圖嗎? – xoyoja

+0

@xoyoja是的它確實 –

+0

我檢查了Portable Areas解決方案。 1.它不是Razor視圖/ *。cshtml,* .aspx。 2.隨着應用程序的運行,N個網站開始啓動,當我導航到「主頁」「登錄」時,鏈接將丟失,因爲它必須切換到另一個網站。這真是令人困惑。 – xoyoja