用Taurus.MVC 做個企業站(上)

来源:http://www.cnblogs.com/cyq1162/archive/2016/08/16/5774448.html
-Advertisement-
Play Games

之前是打算寫一篇文章叫: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

感謝大伙支持!!!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1: 添加單元測試 2:打開單元測試類 關鍵點: 類上加上標記:[TestClass],方法上添加標記:[TestMethod],方法輸出使用:Assert.IsNotNull(s,"測試失敗"); 其中:Assert.IsNotNull()是單元測試判斷是否成功方法,還有其他方法,s為判斷對象," ...
  • 結論: > Socket 理論上 支持 只上行,或者 只下行。 > 心跳包 必須是 上下行的 —— 心跳包請求(上行) - 心跳包響應(下行)。 > 如果 長時間 只有單向鏈接(只發送不接受,或者 只接受不發送) —— 路由器 就會 丟棄 Socket數據。 > 心跳包 不是 必須的 —— 任意 上 ...
  • 在一個基於面向服務的分散式環境中,藉助一個標準的、平臺無關的通信協議,使各個服務通過SOAP Message實現相互之間的交互。這個交互的過程實際上就是信息交換的過程。WCF支持不同形式的信息交換,我們把這稱之為信息交換模式(Message Exchange Pattern(簡稱MEP),下同), ... ...
  • 提交git代碼的時候報的錯誤 這是因為修改的東西太少的原因,應該多修改一些就可以提交了 例如:只是刪除了一個空格或者一個字元就提交git代碼的話就會提示這個錯誤 解決方法:多多的改變一下代碼,比如增加一下回車 ...
  • 直接看圖吧: ...
  • 在設計資料庫的時候,經常碰到那些表示狀態或類型的欄位,比如訂單的狀態,或者支付的類型。要為這一類數據選擇合適的數據類型,比較常用的有以下兩種方法。 方法一:tinyint+byte(枚舉) 資料庫中類型:tinyint c#中類型:byte,如代碼: 方法二:varchar(xx)+string(c... ...
  • 快捷鍵說明 1.Ctrl+B可以選擇顯示或隱藏左邊的項目導航框; 2.Ctrl+\可以實現在右邊再打開一個編輯工作區域。配合利用Ctrl+1,2,3可以快速切換編輯視窗 3.Ctrl+P快速打開搜索框搜索文件 4.Ctrl+Shift+P命令編輯。 5.Ctrl+Tab列出你所打開的所有文件列表。 ...
  • 目錄索引 【無私分享:ASP.NET CORE 項目實戰】目錄索引 簡介 在Asp.net Core VS2015中,我們發現還有很多不太簡便的地方,比如右擊添加視圖,轉到試圖頁等功能圖不見了,雖然我們可以通過工具欄的自定義命令,把這兩個右擊菜單添加上,但是貌似是灰色的不能用。 其實,這樣也好,通過 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...