Microsoft Word - ch02.docx

Similar documents
<ADB6ADB1C25EA8FAA6DB2D4D56432E706466>

導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式

投影片 1

輕鬆學 Dreamweaver CS5 網頁設計..\Example\Ch0\ \.html..\example\ch0\ \mouse.txt..\example\ch0\ \ _Ok.html 學習重點 JavaScript 複製程式碼 mouse.txt Ctrl+C Ctrl+C 0-4

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new


一 新增 SQL Express 2008 資料庫 步驟一 : 首先, 利用 VB 新增一個 Windows Form 應用程式的專案, 專案名稱為 MyDB 專案名稱為 MyDB 步驟二 : 接下來, 請執行 VB 功能表上的 專案 / 加入新項目, 此時, 請在 加 入新項目 的對話方塊中, 選

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

Microsoft PowerPoint - 07_WinProg.pptx

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class


Photoshop CS3 影像創造力 基礎講堂 8 學習流程 學習重要性 學習難度 必學指令工具 實作應用範例 創造舞台燈光的漸層繪圖 延伸學習 雜訊與半透明漸層 8-1 Photoshop Photoshop 8 136

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f

The golden pins of the PCI card can be oxidized after months or years

Chapter V.S. PC

<4D F736F F D20C9CFBAA3CAD0BCC6CBE3BBFAB5C8BCB6BFBCCAD4C8FDBCB6BFBCCAD4B4F3B8D95FBDA8D2E9B8E55F5F E646F63>

Chapter 00 導論

epub 61-2

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp

Chapter 3 Camera Raw Step negative clarity +25 ] P / Step 4 0 ( 下一頁 ) Camera Raw Chapter 3 089

目录

關於本書 Part 3 CSS XHTML Ajax Part 4 HTML 5 API JavaScript HTML 5 API Canvas API ( ) Video/Audio API ( ) Drag and Drop API ( ) Geolocation API ( ) Part 5

AutoCAD 用戶如何使用 ArchiCAD

untitled

Outlook 2007 設定說明 Offic 企業郵件 / 虛擬主機郵件 / Office 365

封面-12

声 明 本 公 司 及 全 体 董 事 监 事 高 级 管 理 人 员 承 诺 不 存 在 任 何 虚 假 记 载 误 导 性 陈 述 或 重 大 遗 漏, 并 对 其 真 实 性 准 确 性 完 整 性 承 担 个 别 和 连 带 的 法 律 责 任 本 公 司 负 责 人 和 主 管 会 计 工

Microsoft PowerPoint - VB14.ppt

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

多媒體應用 13 新增專案並完成版面配置 <ExMusic01> <activity_main.xml> ImageView ID imgplay ImageView ID imgstop ImageView ID imgfront TextView ID txtsong TextView ID t

TopTest_Adminstrator.doc

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

一 個 SQL Injection 實 例 的 啟 示 頁 2 / 6 因 此, 在 知 名 網 站 上 看 到 SQL Injection, 讓 人 驚 心, 卻 不 意 外 網 站 專 案 外 包 是 目 前 業 界 的 常 態, 而 在 價 格 取 勝 的 制 度 下, 低 價 得 標 的 S

TPM BIOS Infineon TPM Smart TPM Infineon TPM Smart TPM TPM Smart TPM TPM Advanced Mode...8

untitled

Microsoft PowerPoint - 01_Introduction

没 有 多 余 的 Contruol 或 Action 了 原 来 Domain 层 被 服 务 层 Service layer 遮 挡, 在 右 边 图 中, 则 Domain 层 直 接 暴 露 给 前 台 了, 没 有 被 遮 挡, 裸 露 了 这 样 一 步 到 位 实 现 领 域 模 型

skta00013_read.pdf

untitled

Chapter 16 集合

概述

untitled

投影片 1

健保資訊網服務系統 (VPN)- 瀏覽器設定 目 次 壹 作業目的及功能... 2 一 作業目的... 2 二 作業功能... 2 貳 瀏覽器設定說明... 3 一 Internet Explorer 8(IE 8)... 5 二 Internet Explorer 9(IE 9)... 8 三 I

Outlook 2010 設定說明 Offic 企業郵件 / 虛擬主機郵件 / Office 365

untitled

財金資訊-82期.indd

上海市教育考试院关于印发新修订的

目錄

untitled

學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘

運算子多載 Operator Overloading

p.2 1 <HTML> 2 3 <HEAD> 4 <TITLE> </TITLE> 5 </HEAD> 6 7 <BODY> 8 <H3><B> </B></H3> 9 <H4><I> </I></H4> 10 </BODY> </HTML> 1. HTML 1. 2.

超連結 03 URI (Universal Resource Identifier) URI Web URL (Universal Resource Locator) URI URI :// [: ]/ [/ 2...]/

chapter 2 HTML5 目錄iii HTML HTML HTML HTML HTML canvas

使用手冊

關於本書 l 3 PhoneGap Appcelerator Titanium Sencha Touch (wrapper framework) Native App PhoneGap Build Native App Hybrid App Java Objective-C Android SDK


840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

13 根 据 各 种 网 络 商 务 信 息 对 不 同 用 户 所 产 生 的 使 用 效 用, 网 络 商 务 信 息 大 致 可 分 为 四 级, 其 中 占 比 重 最 大 的 是 ( A ) A 第 一 级 免 费 信 息 B 第 二 级 低 收 费 信 息 C 第 三 级 标 准 收 费

Microsoft Word - 2AF63內文.doc

基于UML建模的管理管理信息系统项目案例导航——VB篇

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378>

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

untitled

1 1 Excel VBA 說明 ( ) (_) STEP4 Excel 2 STEP5 A1 1 B2 2 C3 3 STEP6 A1 STEP7 > > 1-11

7 DataSet DataSet TableColumnDataSet DataSet NOTE DataSet DataAdapterDataSetDataAdapter DataSet DataSetDataSetDataSet NorthwindDataSet DataSet Dim Nor

第七章

计算机软件技术专业教学计划

本 课 程 作 为 非 计 算 机 专 业 本 科 通 识 课 程, 是 一 门 理 论 和 实 践 紧 密 结 合 的 实 用 课 程, 内 容 包 括 计 算 机 基 础 部 分 和 程 序 设 计 部 分 计 算 机 基 础 部 分 涵 盖 计 算 机 软 硬 件 组 成 数 制 表 示 操

epub83-1

投影片 1

Microsoft Word - CH04.doc

Mac 版之 Horizon Auton 系統安裝操作手冊 Page 1 of 25

1. 2. Flex Adobe 3.

Microsoft Word - administrative-law-08.doc

大 綱 最 有 利 標 目 的 及 類 型 最 有 利 標 之 辦 理 方 式 準 用 最 有 利 標 取 最 有 利 標 精 神 最 有 利 標 之 類 型 及 其 相 關 規 定 適 用 最 有 利 標 準 用 最 有 利 標 及 取 最 有 利 標 精 神 作 業 程 序 及 實 務 分 析

Enter the help project title here

1 Internet [1]P Web Service Web Service Web XML HTTP URL 1..NET Framework.NET Framework Web Service HTTP 80.NET Framework 2

untitled

概述

Microsoft Word - SupplyIT manual 3_cn_david.doc

Transcription:

02 ASP.NET MVC CRUD 初體驗 起初, 神創造天地 地是空虛混沌, 淵面黑暗 ; 神的靈運行在水面上 神說 : 要有光, 就有了光 ( 創世記 1:1-3) 學習目標 新增 修改 刪除 查詢是 Web 應用程式常見的功能 本章將帶領初學者由建立資料庫開始, 學習如何設計具有新增 修改 刪除 查詢作業的 ASP.NET MVC 應用程式 並瞭解 ASP.NET MVC 的運作模式 專案架構與網址路由設定

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 2.1 ASP.NET MVC 的運作模式 開發 ASP.NET MVC 應用程式之前, 有必要瞭解其運作模式 ( 以下說明示範不包含 Model 的使用 ) 1. 當用戶端使用者由瀏覽器送出一個請求 (Request), 這個請求可能是輸入一段網址 點按超連結或是按下表單的傳送按鈕 2. 用戶端所送出的請求會傳送到應用程式伺服器的 ASP.NET MVC 的路由表 Routing 進行比對, 比對完成 Routing 會執行對應的控制器 (Controller) 中的動作 (Action) 方法 3. Controller 控制器處理完使用者的請求之後, 接著會將結果傳送給指定的檢視 View 4. 最後再將 View 檢視以 HTML 網頁呈現在使用者的瀏覽器上 Routing 2-2

Chapter 2 ASP.NET MVC CRUD 初體驗 若使用者進行資料存取, 即會使用到 Model 模型, 則 ASP.NET MVC 運作模式如下 : 1. 用戶端使用者由瀏覽器送出一個請求 (Request) 2. 用戶端所送出的請求傳送到應用程式伺服器的 ASP.NET MVC 的 Routing 進行比對, 比對完成 Routing 會執行對應的控制器 (Controller) 中的動作 (Action) 方法 3. Controller 控制器透過 Model 模型來存取資料來源 4. Controller 控制器將取得 Model 模型的資料結果傳送至指定的 View 檢視 5. 最後將 View 檢視與 Model 模型結果編譯成 HTML 網頁並呈現在使用者的瀏覽器上 2-3

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 2.2 ASP.NET MVC 的 CRUD 作業 在資料庫程式設計中,CRUD 字母縮寫即是 Create Read Update 以及 Delete, 它代表的是操作資料庫應用程式的新增 讀取 ( 查詢 ) 修改和刪除四項作業, 字母縮寫會對應到 SQL 語法和 HTTP 方法 (RESTful API) 的操作, 如下圖 : 操作 SQL HTTP Create INSERT PUT / POST Rade(Retrieve) SELECT GET Update(Modify) UPDATE PUT / POST / PATCH Delete(Destroy) DELETE DELETE 透過下面範例一步步帶領讀者, 由建立專案開始, 體會開發一個待辦事項功能的 ASP.NET MVC 網站有多麼容易, 此網站可新增 刪除 修改 讀取待辦事項 ttodo 資料表 2.2.1 開啟與執行 ASP.NET MVC Web 專案 在開始練習製作 ASP.NET MVC 專案時, 先學會如何開啟與執行本書範例的專案, 將有助於您瞭解範例的功能與學習的重點 上機練習 Step 01 複製專案檔 將書附光碟 ch02 資料夾複製到 C:\MVC 資料夾下 Step 02 開啟 Visual C# 的 ASP.NET Web 應用程式專案進入 VS 2017 整合開發環境, 執行 檔案 (F)/ 開啟 (O)/ 專案 / 方案 (P) 開啟 開啟專案 視窗, 接著請選取 C:\MVC\ch02\slnToDo 資料夾下的 slntodo.sln 方案檔並按下鈕開啟該 Web 方案 2-4

Chapter 2 ASP.NET MVC CRUD 初體驗 Step 03 執行結果 本例是可新增 修改 刪除 檢視 ASP.NET MVC 的待辦事項管理系統 請按下執行程式鈕並測試本例功能 1. 網站執行時出現待辦事項列表記錄, 待辦事項有編號 標題 圖示 完成日等四個欄位, 每一筆記錄可使用編輯 (Edit) 和刪除 (Delete) 記錄的功能 ; 如下圖若按下 Delete 的連結會出現對話方塊再次詢問是否刪除該筆記錄 2-5

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 2. 當在上圖按下 Edit 連結時會切換到修改記錄的頁面, 網頁會出現舊的資料記錄, 且圖示使用下拉式清單呈現, 完成日使用日期清單呈現 ; 修改完成之後可按下鈕更新待辦事項資料 3. 按下 待辦事項新增 連結會連結至待辦事項新增的頁面, 在此網頁可輸入待辦事項的標題 圖示 完成日的資料, 編號欄位為自動標號所以不用輸入資料, 接著再按下鈕 新增待辦事項記錄後即會回到列表頁面觀看新增後的結果 2-6

Chapter 2 ASP.NET MVC CRUD 初體驗 2.2.2 建立 ASP.NET MVC Web 專案與資料庫 上機練習 Step 01 建立 Visual C# 的 ASP.NET Web 應用程式專案進入 VS 2017 整合開發環境, 執行 檔案 (F)/ 新增 (N)/ 專案 (P) 開啟下圖 新增專案 視窗, 接著依下圖操作在 C:\MVC\ch02 資料夾下建立名稱為 slntodo 方案, 專案名稱命名為 prjtodo, 專案範本為 空白, 核心參考為 MVC 2-7

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 Step 02 在專案中加入欲使用的圖檔將 ch02 資料夾下的 images 資料夾拖曳到 prjtodo 專案下, 結果專案下會加入 images 資料夾, 該資料夾會有 0.png 和 1.png 圖檔 (0.png 代表重要事項圖示 ;1.png 代表普通事項圖示 ) 2-8

Chapter 2 ASP.NET MVC CRUD 初體驗 Step 03 建立專案使用的 dbtodo.mdf 代辦事項資料庫 本例的 Model 模型可用來存取 dbtodo.mdf 資料庫的 ttodo 資料表, 請依下列步驟建立 dbtodo.mdf 資料庫內含 ttodo 資料表, 該資料表的欄位如下 : 資料表名稱 主鍵值欄位 ttodo fid 欄位名稱資料型態長度允許 null 預設值備註 fid int 否 ftitle nvarchar 50 是標題 fimage nvarchar 50 是 編號識別規格設為 True; 識別值種子為 1; 識別值增量為 1; 待辦事項重要程度 0.png: 重要 1.png: 普通 fdate date 是完成日 ( 期限日期 ) 1. 在方案總管的 App_Data 資料夾按滑鼠右鍵, 由快顯功能表執行 加入 (D)/ 新增項目 (W) 指令 2. 接著開啟下圖 加入新項目 視窗, 請依圖示操作新增 dbtodo.mdf 資料庫 完成之後方案總管 App_Data 資料夾下會出現 dbtodo.mdf 資料庫 2-9

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 3. 在上圖 dbtodo.mdf 快按滑鼠左鍵兩下會開啟伺服器總管 請在伺服器總管點按 dbtodo.mdf, 並在 資料夾 按滑鼠右鍵由快顯功能表執行 加入新的資料表 (T) 指令, 接著依圖示操作新增 ttodo 資料表有 fid ftitle fimage fdate 四個欄位 2-10

Chapter 2 ASP.NET MVC CRUD 初體驗 [ 註 ] 欄位前面若有圖示, 表示該欄位為主索引鍵 若要將欄位指定為主索引鍵, 只要點選該欄位並執行 設定主索引鍵 (K) 指令即可, 如左下圖 ; 若要移除主索引鍵, 只要點選該欄位並執行 移除主索引鍵 (K) 指令即可, 如右下圖 2-11

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 4. 在 ttodo 資料表上按滑鼠右鍵由快顯功能表執行 顯示資料表資料 (S) 指令, 接著請在 ttodo 資料表窗格內輸入兩筆待辦事項記錄 Step 04 建立可存取 dbtodb.mdf 資料庫的 Model(ADO.NET 實體資料模型 ) 1. 在方案總管的 Models 資料夾按滑鼠右鍵並執行快顯功能表的 加入 (D)/ 新增項目 (W) 指令新增 ADO.NET 實體資料模型, 將該檔名設為 dbtodomodel.edmx (.edmx 副檔名可省略不寫, 該檔是用來記錄資料庫所對應的實體模型 ) 2-12

Chapter 2 ASP.NET MVC CRUD 初體驗 2. 當新增 dbtodomodel.edmx 的 ADO.NET 實體資料模型後, 即會開啟 實體資料模型精靈 視窗, 該視窗會一步步指引使用者完成模型 2-13

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 2-14

Chapter 2 ASP.NET MVC CRUD 初體驗 3. 完成上面步驟後, 實體資料模型會建立在 Models 資料夾下 接著會進入下圖 Entity Designer 實體資料模型設計工具的畫面, 可以發現設計工具內含 ttodo 實體資料模型 2-15

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 4. 請選取方案總管視窗的專案名稱 (prjtodo) 並按滑鼠右鍵執行快顯功能表的 建置(U) 指令編譯整個專案, 此時就可以使用 Entity Framework 來存取 ttodo 資料表 2.2.3 ASP.NET MVC 讀取作業 在上節建立好可以連接 ttodo.mdf 資料庫以及存取 ttodo 資料表的 Model, 接著練習將 ttodo 資料表內的所有記錄顯示在網頁上 上機練習 Step 01 建立 Home 控制器在方案總管的 Controllers 資料夾按滑鼠右鍵並執行快顯功能表的 加入 (D)/ 控制器 (T) 指令新增 HomeController.cs 控制器檔案, 控制器類別會繼承自 Controller 類別, 該控制器內含名稱為 Index 的 Action 動作方法 2-16

Chapter 2 ASP.NET MVC CRUD 初體驗 [ 註 ] 控制器類別名稱一定要使用 Controller 當結尾 2-17

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 Step 02 撰寫 HomeController 控制器的 Index 的 Action 方法 當執行 http://localhost/home/index 時會執行 HomeController 的 Index 動作方法請撰寫如下灰底處的程式碼 FileName: Controllers/HomeController.cs 01 using System; 02 using System.Collections.Generic; 03 using System.Linq; 04 using System.Web; 05 using System.Web.Mvc; 06 07 using prjtodo.models; 08 namespace prjtodo.controllers 09 { 10 public class HomeController : Controller 11 { 12 dbtodoentities db = new dbtodoentities(); 13 14 // GET: Home 15 public ActionResult Index() 16 { 2-18

Chapter 2 ASP.NET MVC CRUD 初體驗 17 var todos=db.ttodo.orderbydescending(m => m.fdate).tolist(); 18 return View(todos); 19 } 20 } 21 } 1) 第 1-5 行 : 預設引用的命名空間 2) 第 7 行 : 存取 dbtodo.mdf 資料庫的 dbtodoentities 類別物件置於 Models 資料夾, 因此請引用 prjtodo.models 命名空間 3) 第 12 行 : 建立 dbtodoentities 類別 db 物件 4) 第 17 行 : 將 ttodo 資料表內的記錄依 fdate 欄位進行遞減排序並轉成串列再將結果指定 todos 變數 5) 第 18 行 : 將 todos 待辦事項的所有記錄傳到 Index.cshtml 的 View 檢視頁面 Step 03 建立 Index.cshtml 待辦事項列表 View 檢視頁面 1. 在 Index 的 Action 動作方法上按滑鼠右鍵並執行快顯功能表的 新增檢視 (D) 指令 2. 在加入檢視視窗指定檢視名稱為 Index ; 範本 (T) 為 List ; 模型類別 (M) 為 ttodo ; 資料內容類別 (D) 為 dbtodoentities ; 並勾選使用版面配置 頁 (U), 最後按下 Index.cshtml 檢視頁面 鈕 結果方案總管的 Views/Home 資料夾下會新增 2-19

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 3. 按下執行程式鈕觀看網頁執行結果 2-20

Chapter 2 ASP.NET MVC CRUD 初體驗 4. 上圖標題欄位希望呈現中文名稱 影像 (fimage) 欄位以圖示顯示 待辦事項的完成日以日期顯示, 因此需要修改 Index.cshtml 檢視頁面的程式碼, 請將如下刪除線的程式碼刪除並修改成粗體字或指定的程式碼 FileName:Views/Home/Index.cshtml 01 @model IEnumerable<prjToDo.Models.tToDo> 02 03 @{ 04 待辦事項 ViewBag.Title = "Index"; 05 } 06 待辦事項 07 <h2>index</h2> 08 待辦事項新增 09 <p> 10 @Html.ActionLink("Create New", "Create") 11 </p> 12 <table class="table"> 13 <tr> 14 <th> 15 編號 16 </th> 17 <th> 18 標題 19 @Html.DisplayNameFor(model => model.ftitle) 20 </th> 21 <th> 2-21

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 22 圖示 23 @Html.DisplayNameFor(model => model.fimage) 24 </th> 25 <th> 26 結案日 27 @Html.DisplayNameFor(model => model.fdate) 28 </th> 29 <th></th> 30 </tr> 31 32 @foreach (var item in Model) { 33 <tr> 34 <td> 35 @item.fid 36 </td> 37 <td> 38 @Html.DisplayFor(modelItem => item.ftitle) 39 </td> 40 <td> 41 <img src="~/images/@item.fimage" width="32" /> 42 @Html.DisplayFor(modelItem => item.fimage) 43 </td> 44 <td> 45 @DateTime.Parse(item.fDate.ToString()).ToShortDateString() 46 @Html.DisplayFor(modelItem => item.fdate) 47 </td> 48 <td> 49 @Html.ActionLink("Edit", "Edit", new { id=item.fid }) 50 @Html.ActionLink("Details", "Details", new { id=item.fid }) 51 @Html.ActionLink("Delete", "Delete", new { id=item.fid }) 52 </td> 53 </tr> 54 } 55 56 </table> 2-22

Chapter 2 ASP.NET MVC CRUD 初體驗 2.4 ASP.NET MVC 路由 (Routing) ASP.NET MVC 是以網址路由 (Routing) 規範方式將 URL 模式對應到實體檔案, 也就是說將 URL 模式連結至控制器, 而不是網頁, 而網址路由是定義在 App_Start 資料夾的 RouteConfig.cs 檔案中 上圖 RegisterRoutes 靜態方法中使用 routes.maproute() 方法定義預設的路由, MapRoute() 方法分別定義三個參數, 其說明如下 : 1. name: 設定路由名稱 2. url: 設定網址對應到控制器 (Controller) 動作(Action 方法 ) 以及路由值 (id, 即 Url 參數 ) 規則 3. defaults: 設定控制器 (Controller) 動作(Action 方法 ) 以及路由值 (id, 即 URL 參數 ) 的預設值 經由上面設定當程式執行時預設會啟動網址 http://localhost/home/index 代表是 ASP.NET MVC Web 應用程式專案的首頁 ; 在路由比對得到的控制器是 Home, 動作 Action 方法是 Index, 因此會執行 Controllers 資料夾下的 HomeController.cs( 即 Home 控制器 ) 的 Index() 方法, 再由 Index() 方法選擇對應的檢視頁面並傳給使用者 2-45

跟著實務學習 ASP.NET MVC- 第 次寫 MVC 就上手 2.5 習題 1. 在資料庫程式設計中,CRUD 字母所代表的縮寫下列何者錯誤? (1) C 為 Create 縮寫, 代表新增作業 (2) R 為 Read 縮寫, 代表讀取 ( 查詢 ) 作業 (3) U 為 Unit 縮寫, 代表單元作業 (4) D 為 Delete 縮寫, 代表刪除作業 2. CRUD 對應到 SQL 語法下列何者錯誤? (1) Create 對應 INSERT (2) Read 對應到 SELECT (3) Update 對應到 PUT (4) Delete 對應到 DELETE 3. CRUD 對應到 HTTP 方法 (RESTful API) 的操作下列何者錯誤? (1) Create 對應 PUT / POST (2) Read 對應到 GET (3) Update 對應到 GET (4) Delete 對應到 DELETE 4. 資料庫所對應的實體模型檔案副檔名為何? (1).html (2).cs (3).edmx (4).csv 5. 當建立 Home 控制器時, 控制器類別會繼承自 Controller 類別, 該控制器內含下列何者之 Action 動作方法? (1) Index (2) Get (3) Put (4) Select 6. _Layout.cshtml 版面配置頁預設使用下列何者前端套件? (1) Backbone (2) Slick (3) Bootstrap (4) Gulp 7. ASP.NET MVC 的專案架構, 下列何者錯誤? (1) 操作資料庫存取的程式置於 Models 資料夾下 (2) 檢視頁面會對應至控制器的動作 (Action) 方法名稱 (3) 控制器的名稱最後面要再加上 Controller (4) 控制器類別檔會放在 Views 資料夾下 2-46