ASP NET 的 MVC 三層架構問題怎麼解決?

時間 2021-05-12 04:43:39

1樓:豬哥哥

mvc屬於三層架構中的表示層,與三層架構沒有什麼衝突。三層架構該怎麼寫還怎麼寫,只是表示層用mvc框架,我就從來不用mvc裡的model。你想多了。

2樓:Dylan Li

MVC可以說是UI層的一種技術,一般你可以這樣做:專案繼續拆分,分為DAL,BLL,Entity,UI。其中UI就包括http://

ASP.NET

MVC,這裡MVC中的M可以看做是View模型,負責Controller和View之間的資料傳遞。DAL就是資料庫訪問層。BLL專門處理業務邏輯,由UI層中的Controller呼叫,那麼Entity就是資料庫對映實體,負責資料在各個層間的傳遞。

具體的業務邏輯還要在細分,如果是和UI相關的寫在Controller中,如果和具體的處理流程相關那就寫在BLL中。具體做個專案你會有更好的理解

3樓:劉小先森

mvc很多時候只是作為三層的ui層.而mvc中的m通常不是運算元據庫的model.而是作為傳遞給view的viewModel.

然後控制器呼叫bll.bll呼叫dal.最後控制器得到資料在封裝成ViewModel來和v進行資料互動....

個人見解...也是新手....勿噴

4樓:布魯斯

程式設計這個事兒是要了解學習寫東西的,但是這個知識要變成你自己的就一定要多看些跟實際貼近的例子,然後按照自己的理解再寫幾次就知道了。

所以我推薦你看看微軟自己寫的PET shop這個例項專案。絕對比你在自己得知識界限內反覆思考有用的多。

5樓:七級兵極地雪熊

不要搞混「三層結構」和「MVC三層結構」,哪怕有四個字相同也不行。

DAL、BLL和UI是「三層結構」的概念,描述的是整個軟體的架構。

而Model(你沒問題)、View(HTML等)和Controller描述的不是整個軟體,而是「三層結構」中的UI。至於資料要如何持久化,它不關心這個。如果你非要離經叛道,把Model直接傳送給DAL,你只是違反了「三層結構」,並沒有違反「MVC三層結構」。

那麼剩下的問題是不是好解釋了?protected void Page_Load(object sender, EventArgs e)是Controller,而Controller是UI一部分。Controller負責把Model傳送到View,而BLL是業務邏輯,二者截然不同。

6樓:Paul Liu

這麼說或許你能明白,http://

webform之類框架確切的說應該是前端展示框架,也就是說它們是三層框架中的UI層。不要想當然的認為UI層只有html,UI層還有UI展現邏輯呢。

7樓:戴新厚

原則上三層UI處理介面互動的工作,BLL處理業務邏輯工作,DAL處理資料訪問工作。

如果不涉及複雜業務,就這樣寫就可以,如果有特殊規則,可以在BLL層處理,比如A類產品打五折。

UI:protected void Button1_Click(object sender, EventArgs e)

BLL:

namespace BLL

dal.Add(model);}

三層架構的原理是什麼?

智子 談談自己的理解。首先,這個三層架構個人理解應該是邏輯上的三層,並非硬體上的三層。然後第二個問題的通訊方式,這個只是實現方式不同而已。不同場景下,可以採用不同的通訊方式。以web應用為例,通常採用網路來進行通訊。而通訊的原理,就是要實現資訊互動嘛,不同實現方式,有著對應的不同的實現原理。在面對大...

C 開發中三層架構BLL,DAL還有IBLL和IDAL介面,請問為什麼要定義介面?有什麼用啊?

除了換資料庫基本沒什麼用 當然可以換資料庫這個義意非常重大 你說你分這麼多層,寫的人才不會理你這麼多呢。於是後來覺得只要可換資料庫,單層效果是最好的。 JW TAN 你想過嗎,建一棟大廈時,怎麼支援這麼多電子裝置的接入?沒關係,咱們甩出乙個IChaZuo插座介面,乙個IWangKou網口介面 那麼,...

茶葉色選機的工作原理是什麼,三層 四層 五層如何選擇?

一席茶話 茶葉加工中揀梗去雜是費工費時且又非常關鍵的工序,揀剔作業已是茶葉精製中質量與成本控制的瓶頸環節。由於機械效能等原因,階梯式揀梗機 靜電揀梗機等常規裝置,揀剔效果不理想。如工夫紅茶通過多次機揀 靜揀,仍需手揀予以輔助,手工揀茶費用佔紅茶精製成本的10 15 近年來,茶鮮葉的人工採摘質量下降及...