2010-02-18 40 views
0

這是一個ASP.NET MVC初學者問題(我正在開發NerdDinner)...我有創建ASP.NET MVC cms(有自己的設計)和門戶(也有自己的設計)的任務將顯示由CMS處理的數據。我想知道如果我將不得不在Visual Studio中創建兩個單獨的項目,或者我將不得不使用一個項目並將特定文件夾中的門戶部分。
我知道,我的問題是有點爲時過早(根據事實,我還沒有完成教程),但我有點不耐煩了:)
ASP.NET cms和顯示模板 - 2個項目或只是1?

在服務器上(商業託管)我想只用一個託管帳戶...這個東西與URL路由有點讓我困惑,CMS實際上也爲搜索引擎優化。

我想URL的結構是:
---- ---- PORTAL
www.domain.com
www.domain.com/Menu1/Submenu1
www.domain。 COM /菜單2/Submenu1/SubSubmenu1 ...

---- ---- CMS
www.domain.com/CMS
www.domain.com/CMS/Whatever

感謝,

回答

2

這一切都依賴於門戶的功能和MVC釐米。

對於初學者,我會爲模型/數據訪問提供單獨的解決方案,這樣您可以擁有儘可能多的MVC項目而無需重複訪問數據。

從你想要的網址結構我可能會有CMS作爲一個單獨的控制器和子文件夾。或者,如果您使用MVC 2,則可以查看可能會給您更多靈活性的區域支持。

如果你想解決是一個複雜一點/靈活的,你有多種選擇:

如果門戶和MVC兩釐米將會有你有兩個母版頁他相同的功能和頁面佈局並確定返回視圖時顯示哪個主頁。你可以在路由中指定這個,所以多個路由將指向不同的控制器。

如果佈局/功能稍有不同,但一個控制器仍然可以管理,您可以有一個單獨的控制器項目和兩個mvc項目,其中只包含視圖,javascript和圖像,這兩個mvc解決方案都會查看您的控制器解決方案。有了這個選項,你很可能最終會在你的域名的一個根目錄下設置兩個網站,另一個在CMS文件夾下(在你的MVC應用程序中,你將需要阻止到/ CMS的路由,以便你的CMS應用程序處理它)。

最後,如果兩者差異巨大,有兩個獨立的項目,但保留您的通用數據訪問項目,如上所述,您可能需要在您的託管軟件包上設置兩個站點。

+0

Asp.NET MVC 2很好的解決了這個問題 - >區域! – 2010-03-26 09:29:06