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中創建的頁面,說明模塊分開創建成功。

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM