C#MVC中創建多模塊web應用程序

當一個應用程序有越來越多的子模塊後,應用程序將變得越來越大,複雜度也越來越高,應用程序也越來越難維護。如果把每個子模塊,獨立分成不同的web應用程序,則這個項目將易於維護。關於這個的好處,我也描述得不好。總之,模塊分開,不同程序員的不同模塊,不互相影響,一個龐大的項目,如果分爲多個Web應用程序,那將更容易維護。

那麼,如何將一個大的web應用程序,分成多個不同的web應用程序呢。

直接記錄實現過程:

1.首先,我們創建一個主項目,其他分離項目,都將通過這個主項目爲路口。如圖所示,我們創建一個Web應用程序,在這裏命名爲MainModuleDemo,然後選擇一下存放的路徑;

 

在這裏,我們選擇空的MVC項目

點擊確定之後,我們的目錄長這樣

 

2.然後我們添加一個HomeController和HomeController下的一個頁面Index.cshtml,在頁面內隨便寫點什麼,用於測試;

 

現在,我們的目錄結構,如下圖:

 

 3.現在我們在_Layout.cshtml中寫剛纔創建的頁面的a標籤,如下圖

@Html.ActionLink("Home", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })

4,生成解決方案,運行解決方案,可以看到如下頁面

 

 以上是主項目的創建,接下來,正式進入建立子項目的步驟。

5.右鍵我們的項目ManiModuleDemo->添加->區域(英文版的話,是Areas),如圖

6.彈出新增區域名稱的對話框,輸入我們區域的名字(這個名字會和你待會新建的子項目一致),在這裏,我們輸入FirstChildModule,點擊添加,如下圖所示

現在我們的目錄結構長這樣:

7.將新建的區域下的FirstChildModuleAreaRegistration.cs文件備份一份,然後將Areas下的FirstChildModule文件夾整個刪除(包括FirstChildModule文件夾本身),如下圖

 

 

刪除後的目錄結構,Areas文件夾是空的,如下圖

 

9.創建我們要創建的子項目,右鍵解決方案->新建項目

10,彈出新建項目對話框

命名爲FirstChildModule,和剛纔新建的區域名稱是一樣的(應該是不需要一樣的,只是我沒試過,爲了容易理解,就設置同樣的名字),注意選擇的位置,要在主項目MainModuleDemo項目下的Areas文件夾中(其實就是我們剛纔刪除的區域文件夾一樣)

點擊確定,選擇mvc空項目

現在目錄結構長這樣:

 

11、選中MainModuleDemo,點擊顯示所有文件,可以看到,我們剛纔新建的FristChildModule項目,如圖

12、更改下MainModuleDemo項目下的RouteConfig.cs,修改命名空間爲MainModuleDemo.Controllers,如下圖

 

 13、右鍵FirstChildModule->屬性->生成選項卡,修改生成路徑

其實這個路徑,正好指向主項目的Bin文件夾中

14、在FirstChildModule中創建一個控制器和一個頁面

 

 

15、把剛纔第7步 備份的那個文件FirstChildModuleAreaRegistration.cs,拷貝到FirstChildModule根目錄下,以上步驟後,我們的目錄結構長這樣

16、修改FirstChildModuleAreaRegistration.cs,如下圖

17、在MainModuleDemo的_Layout.cshtml文件中,添加如下鏈接,這個鏈接是剛纔在FirstChildModule中創建的鏈接

 

 18、生成整個解決方案,我們可以看到FirstChildModule生成的dll文件,在MainModuleDemo中的bin中,如下圖

運行項目,可以看到如下頁面

點擊子模塊首頁,就可以跳轉到我們剛纔在FirstChildModule中創建的頁面,說明模塊分開創建成功。

以上是模塊分離的所有步驟。

原文網址:http://www.cnblogs.com/LJP-JumpAndFly/p/7208938.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章