1. 程式人生 > >C#MVC中建立多模組web應用程式

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

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

原文網址:https://www.cnblogs.com/LJP-JumpAndFly/p/7208938.html?utm_source=itdadao&utm_medium=referral