《ASP.NET 框架應用程式實戰》
========== ========== ==========
[作者] (中) 李發陵 冷亞洪
[出版] 清華大學出版社
[版次] 2017年01月 第1版
[印次] 2017年01月 第1次 印刷
[定價] 47.00元
========== ========== ==========
【第02章】
(P023)
目前, ASP.NET MVC 4 已內置于 Visual Studio 2012 中; ASP.NET MVC 5 已內置于 Visual Studio 2013 中,
ASP.NET MVC 框架為創建基于 MVC 設計模式的 Web 應用程式提供了設計框架和技識訓礎,它是輕量級的、高度可測驗的演示框架,并且它結合了現有的 ASp.NET 特性, MVC 框架被定義在 System.Web.Mvc 命名空間中,并且是被 System.Web 命名空間所支持的,
(P024)
ASP.NET MVC 框架是基于標準組件的,開發人員可以根據需要分解和替換每個組件,
(P028)
學習一個軟體開發框架最有效的方式就是了解并使用它,
(P031)
MVC 5 專案默認使用 Razor 視圖引擎來開發專案,
(P034)
在 “@{ /* 代碼體 */ }” 中的代碼的每一行都必須以 “;” 結束,
(P035)
輸出變數值 (格式 : @變數) 則不需要以 “;” 作為結束符,
如果在 “@” 的前一個字符若是非空白字符,則 MVC 引擎不會對其進行處理,
只有一行陳述句的運算式,以 “@” 開頭,不需要 { } ,
Razor 不支持訪問修飾符 (如 public 、 private 等) ,可以在單行代碼中定義區域變數,
(P036)
在 “@ {...}” 內部可以輸出文本,利用 “@:” 進行單行輸出,
(P037)
在 “@ {...}” 內部可以利用 <text/> 進行多行輸出,
在 Razor 中使用回圈需要加關鍵字符 “@” ,共有兩種方式可以實作回圈的效果,
(P039)
視圖檔案默認的目錄為 : Views\[ControllerName]\[ActionName].cshtml
(P040)
一個 Web 應用程式通過 RouteTable 型別的靜態只讀屬性 Routes 維護一個全域的路由表,該屬性回傳一個 RouteCollection 物件,我們將這個物件稱為路由表,
(P050)
多數情況下,會通過一個 Model 物件來處理復雜的引數,如引數為一個物件,這時 DefaultModelBinder 會遍歷 Model 物件的屬性來系結引數,
(P052)
如果在 Action 的引數中沒有顯示指定接收的模型引數,則可以使用顯示模型系結方法獲取視圖中提取的資料,
UpdateModel 與 TryUpdateModel 都用于顯示模型系結,
(P059)
布局視圖為公共視圖,檔案名通常以下劃線開頭,
布局視圖中可以選擇性地使用 @RenderBody() 或 @RenderSection() 方法作為布局占位符,但一個布局視圖只能有一個 @RenderBody() ,可以有多個 @RenderSection() ,
由于布局視圖的特殊性,決定了布局視圖不能直接被控制器的方法呼叫,需要被其他視圖頁參考后才能使用,
(P060)
如果視圖頁中沒有顯示指定的布局視圖,則系統會自動呼叫 “~/Views/_ViewStart.cshtml” 視圖檔案中設定的視圖頁作為布局視圖,
分部視圖的作用在于一個分部視圖的創建可以被多個布局視圖和普通視圖多次呼叫,
(P063)
在 ASP.NET MVC 5 中可以使用 BundleTable 打包多個 CSS 檔案和 JavaScript 檔案,以提高網路加載速度和頁面決議速度,
(P065)
在視圖檔案的相應位置呼叫 ScriptRender 類和 StyleRender 類的 Render() 方法可以輸出打包的資源,
(P081)
HTML 幫助器的常用方法 :
1. @Html.Action() —— 加載指定的分部視圖;
2. @Html.Partial() @Html.RenderPartial() —— 以 HTML 編碼字串的形式呈現指定的分部視圖;
(P094)
Partial 方法的回傳值為 MvcHtmlString ,而 RenderPartial 方法的回傳值為 void ,
(P095)
UrlHelper 類的常用方法 :
1. @Url.Action() —— 使用指定的操作名稱生成操作方法的完全限定 URL ;
2. @Url.Content() —— 將虛擬 (相對) 路徑轉換為應用程式的絕對路徑;
3. @Url.Encode() —— 將 URL 字串中的特殊字符編碼為字符物體等效項;
【第03章】
(P106)
對于獲取的元素集合,獲取其中的某一項 (通過索引指定) 可以使用 eq 、 get(n) 方法或索引號獲取,要注意, eq 回傳的是 jQuery 物件,而 get(n) 和索引回傳的是 DOM 元素物件,對于 jQuery 物件只能使用 jQuery 的方法,而 DOM 物件只能使用 DOM 的方法,
jQuery 用同一函式實作 set 和 get 方法,
(P110)
撰寫插件的目的是給已經有的一系列方法或函式做一個封裝,以便在其他地方重復使用,方便后期的維護,
避免在插件內部使用 “$” 作為 jQuery 物件的別名,而應當使用完整的 “jQuery” 來表示,這樣可以避免沖突,
(P125)
AJAX 技術通常用于客戶端與服務器端異步交換資料,在交換資料時最常用到的方法是 get 和 post ,
【第04章】
(P139)
物體映射技術作為類與表之間的聯系紐帶,在 ORM 實作中起著至關重要的作用,
(P141)
多對多映射與一對一和一對多映射不同,它需要借助中間表完成多對多映射資訊的保存,
在利用 ORM 技術開發應用程式時,最核心的資料優先處理問題便是 “映射” ,為了成功實作物件與關系之間映射,必須建立的主要檔案有 : 映射類 (*.cs 檔案) 、 映射檔案 (*.hbm.xml 檔案) 以及資料庫組態檔 (*.cfg.xml 檔案) ,
(P145)
物體資料模型 (EDM) 由三部分組成 : 概念模型由概念架構定義語言來定義,主要描述物體類;存盤模型 (又稱邏輯模型) 由存盤架構定義語言 (.ssdl) 來定義,描述表、列、關系、主鍵及索引等資料物件;映射由映射規范語言 (.msl) 定義,主要包括存盤模型中物體類屬性與存盤模型中列的對應,
【第06章】
(P194)
一位專家曾經說過 : “所有結構良好的面向物件構架都具有清晰的層次定義,每個層次通過一個定義良好的、受控的介面向外提供了一組內聚的服務” ,
(P203)
如果說資料層是積木,那邏輯層就是對這些積木的搭建,
(P205)
在實際專案開發程序中設計資料庫時,會為每張表設計一個與業務無關的主鍵,這主要是因為 :
1. 為了唯一地標識表中的每一條記錄,加快檢索的速度;
2. 建立外鍵約束,為了保證資料的完整性,在資料庫表中建立外鍵是保證資料有效性的方法之一,建立外鍵的前提條件是建立主表的主鍵;
(P217)
框架級的 UI 層一般提供公共的、使用頻率非常高的界面使用方式,它是系統與用戶通信與交流的平臺,離用戶最近,將直接影響用戶對系統的評價結果,作為一個軟體架構,不但應該包含底層的功能,還應該包含 UI 層的公共配置,如皮膚、樣式等,
【第09章】
(P255)
基于角色的訪問控制方法 (RBAC) 有以下兩大顯著特征 :
1. 由于 角色 / 權限 之間的變化比 角色 / 用戶 之間的變化相對要慢得多,減少了授權管理的復雜性,降低了管理開銷哦;
2. 靈活地支持企業的安全策略,并對企業的變化有很大的伸縮性;
(P258)
要實作基于 RBAC 的權限管理,需要用戶 (User) 、角色 (Role) 和系統功能模塊 (SystemFunction) 三個類,它們之間的映射關系如下 :
1. User 與 Role 之間的關系為多對多,即一個用戶可以有多個角色,一個角色對應多個用戶;
2. Role 與 SystemFunction 之間的關系為多對多,即一個角色包括多個功能模塊,一個功能模塊可允許多個角色使用;
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/83.html
標籤:ASP.NET MVC
