2013-05-10 48 views
3

我們希望創建一個MVC4 Web應用程序,實現一些必須使用MVC4框架實現的業務工作流程。這個網站應用程序也應該有一個巨大的文檔部分,應該使用CMS,如Umbraco最好地處理。因此,我們選擇了Umbraco作爲基礎架構,實現了CMS頁面,現在我們想要在其中添加應用程序邏輯。Umbraco 6與MVC 4

如果我們擴展RenderMvcController,我們面臨一些限制,因爲我們必須堅持使用Umbraco庫。

是否有可能使用原始MVC4引擎,基本的控制器類,以及不與Umbraco 6 CMS引擎並行繼承的標準視圖頁面?

回答

3

是的,只要您使用的是6.1+版本,我認爲您幾乎可以完成您喜歡的任何操作。

這個umbraco頁面可能有幫助,它在global.asax中有overriding the custom controller的詳細信息。

public class MyApplication : UmbracoApplication 
{ 
    protected override void OnApplicationStarting(object sender, EventArgs e) 
    { 
     DefaultRenderMvcControllerResolver.Current.SetDefaultControllerType(typeof(MyCustomUmbracoController)); 
     base.OnApplicationStarting(sender, e); 
    } 
} 
+0

經過測試,但沒有!新的自定義控制器應該從RenderMvcController繼承,因此錯誤:「指定的類型(MyCustomUmbracoController)不是Umbraco.Web.Mvc.RenderMvcController類型」 – 2013-05-14 20:46:08

+0

嗯。應該可以通過從Umbraco.Web.Mvc.RenderMvcController繼承並重寫Index方法來運行普通的MVC以及Umbraco的東西,如演示[here](http://www.ben-morris.com/using-umbraco-6) -to-創建-AN-ASP-淨-MVC -4- web的應用A)。 – kelpie 2013-05-16 10:30:48

+0

是的,確實!您必須擴展RenderMvcController,但是您擁有MVC的全部功能。感謝v6.1! – 2013-05-27 09:00:39