iT邦幫忙

DAY 6
2

使用ASP.NET MVC 實作購物網站系列 第 6

使用ASP.NET MVC 實作購物網站 (六) - 模型(Model)

模型(Model)

Model負責與資料庫溝通的相關邏輯,我們可以自行定義模型的類別,或是使用Entity Framework來幫我們自動產生資料庫對應的類別,今天我們以自定義類別為主。

承接昨天的範例,我們現在希望在Controller向Model取得所有商品的資料後,傳送給View並顯示出來,首先看Model部分

( 專案路徑為[Models/RouteTest/TempProducts.cs] )

TempProducts類別定義單筆商品資料,屬性定義如下:

ID : 商品編號

Name : 商品名稱

Price : 商品價格

除此之外,此類別也定義了getAllproducts()方法來模擬取出所有商品資訊,其中包含三筆商品資訊。

Controoler部分

(專案路徑為[Controllers/RouteTestController.cs] )

這部分比較簡單,就是跟Models中的TempProducts類別取得所有商品資訊後,傳送給View();

View部分

(專案路徑為[Views/RouteTest/Index.cshtml])

View部分要注意一開始的宣告【@model List<Carts.Models.RouteTest.TempProducts>】是指名傳送進來的模型資料型態為List<Carts.Models.RouteTest.TempProducts>,須注意當前模型內容使用【this.Model】來取得。

運行結果:

( Url位址 : http://localhost:51352/RouteTest/Index )

以上就是基礎的MCV完整流程,美中不足的一點是商品資訊並非真正由資料庫取得,而是使用寫死在TempProducts.cs類別的方式,明天我們將示範如何真正從資料庫拿資料。

*今天的原始碼請參考這裡


上一篇
使用ASP.NET MVC 實作購物網站 (五) - 檢視(View)
下一篇
使用ASP.NET MVC 實作購物網站 (七) - 使用Entity Framework 連接資料庫
系列文
使用ASP.NET MVC 實作購物網站30

1 則留言

0
wilson1966
iT邦研究生 5 級 ‧ 2019-02-12 14:36:47

@model List<Carts.Models.RouteTest.TempProducts> <--這一行去掉系統也可以正常Run

我要留言

立即登入留言