標籤:steam 出租房 style alt 通用 tool 原因 公眾號 view
這兒的MVC是ASP.NET MVC,只用過C#一種語言,後面就直接稱呼為MVC了。
一年多沒接觸MVC後,現在想用MVC做個網站,覺得特別吃力,以前學的僅僅是皮毛,所以閑置了一年後,MVC知識就重新歸零了。
這幾周學習MVC的過程中,部落格園葡萄城的MVC匯總資源給了我很大的協助(http://www.cnblogs.com/powertoolsteam/archive/2015/08/13/4667892.html),尤其是“ASP.NET MVC 音樂市集”系列教程,學完音樂市集後,對Model-View-Controller有了基本的瞭解。但遺憾的是,關於EF Code First模式的使用,文章作者使用了DB Migration,還提供了一個非常龐大複雜的seed檔案,用來初始化資料庫,隨後全程就與資料庫沒什麼事了,這讓人在項目完成後,對資料庫部分仍然摸不著頭腦;還有就是關於使用者登入和許可權控制,作者使用了微軟提供的網站組態工具,就是下面這個
所以,關於許可權控制也是一處讓人困惑的地方。最要命的是,VS2017發布後,第一時間安裝了,但卻發現新版本取消了網站組態工具,而代之以“功能更加強大的”Authentication,下面就是了
試用後發現仍然是一頭霧水,怪只怪自己不會搞許可權控制唄,但不管是網站組態工具還是Authentication,這兩貨都絕對不會再用了。
為了繼續學習MVC,開始了租房網站的實踐。
網站介紹和具體功能
網站按慣例分為前台、後台兩部分,前台供使用者尋找待出租房子的資訊、預約看房;後台供管理員發布、管理房源資訊,進行使用者統一管理、許可權控制等操作
網站仍會使用EF與Code First,但不會執行DB Migration,關於資料庫的修改都要手動執行(這算什麼Code First)。
關於許可權控制,會使用高大上的RBAC許可權控制方式,哈哈,Role-Based-Access-Control,基於角色的許可權控制,說白了就是我們平時使用廣泛的許可權-角色-使用者體系了
還將實現日誌系統,對後台使用者的登入、修改操作以及整個網站的未處理異常進行記錄
項目結構
項目整體結構如下:
公用類庫提供一些前後台通用的方法,比如產生驗證碼、計算MD5等。
項目分層
MVC只針對UI層,從UI到資料庫仍要分層,但考慮到項目很小,如果用三層架構,BLL層發揮不了什麼作用,這次就讓這個悲催的二傳手先歇著了。省略BLL後,只有UI層和Service層了,如下:
但在Controller和Service直接增加了IService介面,這樣做除了顯得高大上,最重要的原因是為了學習IOC。DTO用於在Service和Controller之間傳遞資料。
好了,這是記錄租房網站的第一篇文章,也是開通這個公眾號後的第一篇文章。
受Yummy影響,也申請了公眾號。之前的部落格園已經荒廢,現在敲了區區幾百字後發現,寫點什麼東西的感覺真棒,以後但願能堅持足夠長的時間
部落格園:http://www.cnblogs.com/zhixin9001/
CSDN:http://blog.csdn.net/zhixin9001
學習MVC之租房網站(一)-項目概況