之前是打算寫一篇文章叫:Taurus.MVC 從入門到精通,一篇完事篇!後來轉指一念,還是把教程集在這個企業站項目上吧,之前發過一個幫師妹寫的企業站:“最近花了幾個夜晚幫師妹整了一個企業網站”技術風格是:文本資料庫(txt)+WebForm 這次轉型風格:文本資料庫(txt)+Taurus.MVC ...
前言:
之前是打算寫一篇文章叫:Taurus.MVC 從入門到精通,一篇完事篇!
後來轉指一念,還是把教程集在這個企業站項目上吧!!!
企業站風格:
之前發過一個幫師妹寫的企業站:最近花了幾個夜晚幫師妹整了一個企業網站
技術風格是:文本資料庫(txt)+WebForm
轉型的風格:文本資料庫(txt)+Taurus.MVC
今天要完成的界面主要是首頁:
OK,下麵開始,看看一步一步怎麼從無到有的做這個企業項目:
1:新建ASP.NET空的Web應用程式項目:
2:添加一個類庫項目,叫Taurus.Controllers
3:在Taurus.Controllers項目上用Nuget引用Taurus.MVC:
當然,你也可以用源碼項目,或者找到源碼里的兩個DLL添加引用:
註意EnterPriseSite項目需要引用Taurus.Controllers項目,畢竟編繹後的DLL要集中在EnterPriseSite項目上的。
4:在EnterPriseSite項目上添加Views文件夾,和幾個空頁面:
default.html等頁面沒放到default文件夾,是不對的,後面的截圖會修正。
5:從原WebForm項目里把Style、App_Data目錄下的文本資料庫Copy過來:
順便把項目名稱改成EnterPriseSite.View
6:把原項目的用戶控制項的html標簽Copy過來,放到Shared目錄下master.html里:
用Taurus.MVC的時候,就木有Repeater的概念了,只有Html和JS。
有業務條件代碼的,可以用JS處理,也可以後臺處理,這裡先用Js處理(後面有演示後臺處理的):
模板頁的節點可以隨便放的,只要節點有名稱(id或name),就可以被其它html引用。
引用的屬性名稱可以是id,name或者個別tag如(head,body,title,script,style,form,meta,link)
所以你能用master.head,master,body,master.title,master.script(都只取第一個節點)...
7:從原來的界面複製Default頁面的標簽過來:
原來的Default.aspx:
現在Default.html
界面都搞完了,現在開始要寫代碼了:
8:新建DefaultController.cs,同時把CodeFirst的幾個表類Copy過來:
弄了個Logic文件夾來放,項目簡單的時候,就不想建太多工程,用文件夾了:
然後,寫幾個方法上去,這樣才能載入到對應的html文件:
所以html都是放在/views/default/目錄下的。
補充說明:
預設訪問路徑是:localhost/default/index、locahost/default/artilelist...
為了把default去掉,預設的路由我補充了一個;以前路由模式只有1和2,現在多了個0。
9:看看Web.Config配置:
10:寫邏輯代碼綁定頁面:
由於項目簡單,我把業務邏輯,直接建了一個類,扔Controller裡面了,叫DefaultLogic。
為了分層清晰,同學們還是自己新建一個Taurus.Logic類庫項目放。
邏輯類需要繼承自Taurus.Core.LogicBase,這樣才能傳遞View對象到邏輯類中,註意有構造函數哦。
由於html的節點id按約定:表名View,所以Bind(View)就可以了,不需要指定名稱。
這裡多了一個事件View.Onforeach,用來格式化界面呈現的時間的:
當然後臺不先格式好化,那就前臺去處理了,就像上面的截圖中有一個是用JS處理的代碼。
11:Controller調用邏輯代碼,渲染頁面:
最後,一個漂亮的首頁就出來了:
打完收工:
後續幾個頁面,包括文章列表,文章詳情、產品中心,還有後臺管理,下篇再介紹。
以前都是整個項目做完再寫文章的,現在項目寫一半,文章補一篇,哈。。。
已完成的部分源碼:http://code.taobao.org/svn/cyqopen/trunk/Taurus.MVC.GettingStarted
感謝大伙支持!!!