ASP.net 知識框架

来源:http://www.cnblogs.com/HKKILL/archive/2016/06/17/5593193.html
-Advertisement-
Play Games

ASP.net 第一章:ASP.NET介紹 1.搭建ASP.NET開發環境; 2.理解ASP.NET運行機制; 3.掌握ASP.NET兩種編碼方式。 4.Http協議。 關鍵點: 1.BS的工作原理是什麼? 2.伺服器端開發技術有哪些? Asp 、aspx、jsp、php 3.ASP.NET發展史。 ...


ASP.net

第一章:ASP.NET介紹

1.搭建ASP.NET開發環境;

2.理解ASP.NET運行機制;

3.掌握ASP.NET兩種編碼方式

4Http協議。

關鍵點:

1.BS的工作原理是什麼?

 

 

2.伺服器端開發技術有哪些?

Asp 、aspx、jsp、php

3.ASP.NET發展史。

 

4.ASP.NET的特色和優。

瀏覽器無關性、易於調試、運行效率高。 代碼邏輯分明(頁面顯示.aspx文件,業務邏輯.cs文件)

 

註(msIL或IL是.net框架中間語言縮寫)JIT(Just-in-time compiler)即時編譯器

5.創建一個ASP.NET程式【創建網站、編寫頁面、調試運行】。

6.解決方案組成。

7.搭建開發環境[IIS]。

8.ASP.NET程式的發佈。

9.asp.net運行機制。

 

10.ASP.NET頁面的結構。

11.Page指令。   Page指令定義了頁面用於編譯和解析的屬性 ,每個aspx頁面只能有一個Page指令。

12.如何判斷回發和首次載入。


13.ASP.NET頁生命周期。
 Page_PreInit()  Page_Init() Page_Load()  Page_PreRender()   Page_Render() Page_Unload()

14.Web.Config配置文件的節點操作。


15.ADO.NET在ASP.NET中的使用。

第二章:頁面訪問控制

1.掌握RequestResponse對象的使用;

2.掌握Session對象的使用;

3.掌握Cookie對象的使用。

4.瞭解Application對象。

關鍵點:

1.HttpRequest對象封裝客戶端請求頁面或提交表單時提供信息;

2.Request對象常用屬性和方法

 

 

3.ReSponse對象常用屬性和方法[ContentType、Write()、Redirect()、End()]。

 

4.狀態管理【Cookie存儲於客戶端、Session存儲於伺服器、Application應用程式級別的狀態保持】。

 

Cookie特征 :存儲少量數據,存儲在客戶端,安全性差,只能存儲字元串。

 

 

 

Session特點:

位置:保存在伺服器端,安全性高;類型:任意;Session保存的信息不與其他用戶共用;

在用戶會話期間可以記錄和監事用戶信息;當會話過期或終止時伺服器會清除Session對象。

 

 

Application

 

 

Application特點:位置:伺服器記憶體,執行速度快;使用範圍:整個應用程式;類型:任意;生命周期:從應用程式創建到銷毀。

第三章:表單和數據驗證

1.會使用控制項完成頁面表單設計。

2.掌握常用第三方控制項的使用。

3.會使用Page對象註冊腳本。

4.掌握驗證控制項的使用。

關鍵點:

  1. Web控制項分類【HTML控制項、HTML伺服器控制項、Web伺服器控制項、用戶控制項和自定義控制項】。

 

  1. HTML控制項和Web伺服器控制項的區別。

 

 

  1. 第三方控制項【驗證碼控制項】。

 

 

6.有效性驗證控制【RequiredFieldValidator非空驗證、CompareValidato用於比較控制項的值、RangeValidator用於範圍驗證。RegularExpressionValidator正則表達式進行驗證的控制項、CustomValidator自定義驗證、ValidationSummary驗證報告控制項】。

 

郵箱驗證表達式:\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

 

第四章:搭建風格統一的Web站點

1.會使用母板頁搭頁面框架。

2.會使用導航控制項完成導航功能。

3.能使用XML、手動編碼添加節點來控制樹形導航。

關鍵技術點:

1.母版頁的特別及母版頁的創建步驟。

2.獲取母版頁上控制項的值【兩種方式:通過設置屬性、使用FindControl()方法】。

3.web.sitemap、SiteMapPath控制項。

4.TreeView控制項

第五章:系統架構搭建

1.理解三層架構在ASP.NET中的應用。

關鍵點:

1.三層架構中,各層的含議是什麼?。【表示層、業務邏輯層、數據訪問層】

2.ASP.NET搭建三層架構步驟。

3.三層架構的優勢【適應變化、利於維護、適用於協作開、主流趨勢】。

4.資料庫中有主外鍵關係,模型層如何表示【兩種方式:1.為實體添加外鍵ID;2.為實體添加對象屬性。】

第六章:數據綁定與GridView

1.掌握數據綁定。

2.掌握DropDownList控制項的使用。

3.掌握使用GridView控制項完成數據的顯示功能。

關鍵點:

1、數據源控制項【SqlDataSource、AccessDataSource、XmlDataSource、SiteMapDataSource】

2.後臺綁定數據源。

3.常用的數據綁定控制項【DropDownList、GridView、DetailsView】。

4.DropDowList的常用屬性和方法。

 

 

  1. GridView常用欄位類型【BoundField、TemplateField(有五種模板:標頭、腳註、普通項、交替項、編輯模式)、ButtonField 欄位、CommandField欄位、HyperLinkField欄位、ImageField欄位、CheckBoxField欄位】。

 

 

 

 

 

 

光棒效果

 

多選效果

 

 

6.Eval()方法和Bind()方法的區別。7.Commandname設置自定義命令。

第七章:GridView深入

1.掌握獲取GridView單元格數據。

2.掌握GridView基於單元格的更新。

3.掌握GridView常用事件處理。

4.掌握GridView中的數據刪除。

關鍵點:

  1. 通過行、列獲取單元格數據。

 

  1. GridView的兩個重要屬性

 

 

 

  1. 設置模板列。

 

  1. 添加命令按鈕。

 

5.RowEditing事件【GridViewEditEventArgs對象屬性NewEditIndex、Cancel】。

5.HiddenField控制項。

 

 

 

  1. RowUpdating事件。

 

 

  1. RowCancelingEdit事件。

 

  1. CommandName屬性【CommandArgument:引發事件源的命令參數、CommandName:引發事件源的命令名稱。】,CommandName的值【Cancel、Delete、Edit、Selec、Update】。

 

 

 

單選刪除

 

 

自定義刪除

 

多選刪除

 

 

備註,GridView實例大全

1. Gridview中無須編寫後臺代碼,直接實現增除刪改

 

2. Gridview中添加新記錄

 

3:在Gridview中實現編輯和更新操作

 

4:在Gridview中實現一次性更新所有記錄

 

 

5:在Gridview中固定表頭的實現

 

6:在Gridview中合併單元格的實現

 

7:在Gridview中將數據操作結果顯示在Footer

 

8:在Gridview中添加表頭

 

9:在Gridview中將數據導出

 

10:在Gridview中實現數據導入

 

11:在Gridview中實現嵌套功能

 

12:在Gridview中實現多層嵌套

 

13:在Gridview中實現排序

 

14:在Gridview中實現分頁

 

15Gridivew結合CheckBox控制項的使用

 

16Gridview結合DropDownList控制項的使用

 

17Gridview結合RadioButtom的使用

 

18Gridview內嵌DropDownList控制項

 

19Gridview結合JS,在客戶端結合CheckBox的使用

 

20:在Gridview中設置數據行的背景顏色

 

21:在Gridview中設置數據行的事件

 

22:在Gridview中設置數據行的其他屬性

 

23:在Gridview中索引主鍵的使用

 

 

 

 

 

 

 

第八章:第三方控制項的使用

1.掌握第三方控制項FCKeditorJS版日曆的使用。

2.掌握ASP.NET控制項FileUpload的使用。

3.能編碼實現詳細信息頁面的更新、插入操作。

4.掌握Server對象的常用方法。

關鍵點:

  1. FCKeditor的配置。

n 下載FCKeditor。要下載FCKeditor2.4.2.zip和FCKEditor.NET版本的2個zi包

說明:FCKeditor2.4.2.zip是其最新的JavaScript文件和圖片。FCKeditory.NET.zip是ASP.NET調用的DLL在裡面。

n 分別解壓後把FCKeditory2.4.2.zip裡面的fckeditor目錄整個複製到項目中。

n 解壓FCKeditor.NET.zip包後在FCKeditor.net_2.2\bin\Debug目錄打到FredCK.FCKeditoryv2.dll。其它文件沒用,把此dll文件複製到項目中的bin目錄中。

n 引用FredCK.FCKeditorv2.dll.

第一步:

 

第二步:

 

n 導入到工具箱

在“工具箱”下右鍵

 

 

 

 

n 拖拽FCKeditor到頁面上

 

n 配置WebConfig

 

說明:BasePath是fckeditor所在路徑,fckeditor由於我們直接放網站目錄下這樣寫就可以,如果您的網站多放幾層適當調整即可。 UserFilesPath是所有上傳的文件的所在目錄。為什麼要設置成/Files這樣而不是~/Files,因為FCKeditor使用這個值來返回你上傳後的文件的相對路徑到客戶端。否則的話客戶訪問的時候就會取客戶的機器目錄而不是http形式的目錄。建議:Files要單獨做wwwroot目錄下的一個站點比較好,和我們的站點FCKEditor平行。不要把它放FCKEditor里,為什麼呢?因為Files是要讓客戶有寫的許可權的,如果放FCKEditor下很危險。

n Files目錄要有寫的許可權。你根據自己網站需求設置那個帳號,本文為方便設置User實際中你可能用ASP.NET帳號更合理。

 

n 修改fckeditor/fckconfig.js文件

 

n 下麵以上傳圖片示例說明如何使用

 

點“瀏覽服務”

 

彈出視窗很容易報錯

 

 

如果報錯XML request error: Internal Server Error(500),很可能就是目錄路徑不對和寫許可權沒有。

選擇圖像

 

最後效果

 

  1. Calendar日期控制項常用屬性和事件

 

  1. JS版日曆。

l 下載最新的zip(My97DatePickerBeta.zip)

l 解壓後放到網站裡面。

 

 

l 在頁面中引出js

 

l 效果如下

 

 

 

  1. FileUpload類的常用屬性和方法。

 

 

  1. Server對象常用方法

 

 

 

 

 

第九章:DataListRepeater控制項

1.掌握使用DataList控制項顯示數據。

2.ViewSate

3.會使用Repeater控制項精確顯示內容。

關鍵點:

 

  1. DataList模板

 

 

 

  1. DataList重要屬性。

 

  1. DataList重要事件。

 

 

  1. ViewState頁面級的狀態保持。

 

 

 

  1. Repeater控制項是一個容器控制項、效率高,不會自動生成任何HTML代碼。

 

 

 

第十章:web站點的配置與部署

1.能夠使用Web.config存儲資料庫連接。

2.會使用站點管理工具設置站點配置。

3.能使用Visual Studio站點發佈工具發佈Web站點。

關鍵點:

1.ASP.NET的兩種配置文件:maching.config、web.config。2.自寫下義錯誤配置節點。3.調試和運行時的配置。4.身份驗證和授權:身份驗證方式:Windows、Passport、Form、None。5.授權:Allow允許;deny拒絕;特殊符號:“*”代表所有用戶,“?”代表匿名用戶。

第十一章:用戶自定義控制項

1.掌握用戶控制項的創建、使用。

2.掌握暴露用戶控制項的屬性。

3.掌握自定義控制項的概念。

4.瞭解伺服器控制項的生命周期人、呈現過程。

5.會從伺服器控制項控制項派生自定義控制項。

6.掌握在用戶控制項中使用的自定義事件。

7.掌握自定義控制項呈現頁面的方法。

8.掌握自定義控制項呈現頁面的方法。

9.理解控制項的視圖狀態和控制項狀態。

關鍵點:

1.創建和使用用戶控制項的步聚。2.用戶控制項的關鍵代碼@Control批指令。3.用戶控制項與頁面的區別。4.什麼是自定義控制項【ASP.NET自定義控制項(Custom Control)是編譯的伺服器端控制項,它將用戶界面和其它功能都封裝到可復用的包中(dll),如驗證碼控制項或FCKeditor】。5.事件的定義【定義事件消息、定義委托類型】。6.事件訪問器。7.htmlTextWriter類。

第十二章:WebService

1.掌握Web Service的基本工作原理。

2.理解Web Service的優勢。

3.掌握Web Service的開發和使用。

關鍵點:

1.web Service是可互操作的分散式應用程式。

2.web Service使用Http和XMl進行通信。

3.Web Service可以穿越防火牆,真正實現自由通信。

4.通過Soap實現異地調用。

5.webSerivce的開發步驟

創建Web Service

一、 打開vs2013,選擇文件->新建->項目。

 

二、 選擇【ASP.Net空web應用程式】,將其命名為自己想的工程。

 

三、 然後右鍵點擊工程,添加->web服務。然後命名為自己想要的服務名稱。

 

 

四、 在asmx文件中寫出自己想要開放的WebService方法。

 

五、 方法寫完後,右擊項目->發佈

 

選擇【文件系統】發佈,選擇發佈的物理地址,點擊【發佈】即可

 

在發佈的物理地址中會有這幾個文件。

 

打開IIS,右鍵點擊網站->新建網站

 

選擇網站名稱 ,剛剛發佈的物理地址,還有發佈的IP和埠,先後點完成。

 

然後網站就完成了。

 

、發佈WebService、調用WebService】

第十三章Asp.Net Http管道

第十四章:Ajax

1.什麼是ajax

2.ajax的工作原理。

3.ajax包含的技術。

4.XMLHttpRequest對象。

關鍵點:

  1. XMLHttpRequest對象初始化。2.XMLHttpRequest對象屬性和方法【onreadystatechange、readyState、responseText、responseXML、Status、StatusText、open()、send()】3.數據格式 XML、JSON、HTML

 

第十五章:MVC模式

1.準備工作

l 為什麼要學習ASP.NET MVC?

l ASP.NET MVC學習路線:要有c#ADO.NEThtmljavascriptASP.Net WebForm的基礎。項目中實際用三層架構、ORM等訪問資料庫,但是這次的重點不是這些,因此我們使用SQLHelper

l 講課使用Chrome瀏覽器,不考慮瀏覽器相容性問題。

l 使用Visual Studio 2013.Net 4.5MS SQLServer2005及以上版本。

 

2.課程安排

MVC設計模式

Razor引擎

控制器詳解

校驗

MVC下的Ajax

路由

過濾器

MVC高級

3.MVC模式簡介

l MVC模式兩種理解:一種是表現模式,另外一種是架構模式。它將應用程式分成三個主要組件即:視圖(View)控制項器(Controller)模型(Model)

l M: Model主要是存儲或者是處理數據的組件,Model其實是實現業務邏輯層對實體類相應資料庫操作,如CRUD(create/read/update/delete)。它包括數據、驗證規則、數據訪問和業務邏輯等應用程式信息。ViewModel:視圖模型。V:View是用戶介面層組件。主要是將Model中的數據展示給用戶。ASPXASCX文件被用來處理視圖的職責。C:Controller處理用戶交互,從model中獲取數據並將數據傳給指定的View

4.MVC架構模式

 

 

 

5.ASP.Net的兩種開發方式

l WebForm的開發方式

伺服器端控制項
一般處理程式+html靜態頁+Ajax
一般處理程式+html模板

l ASP.Net MVC的開發方式
2009年第一個開源項目版本發佈
更加開發、更多的新特點、社區活躍
不會取代WebForm
底層跟WebForm都是一樣的。管道上不同的處理而已

 

6WebForm  VS  MVC

 

 

 

7.WebForm請求模型

 

 

8.Asp.Net MVC請求

 

 

9.借用WebFrom理解MVC

l 新建WebFrom項目

l Label的例子:耦合在一塊

l 在page類中添加一個List

l 在前臺用for迴圈遍歷顯示list

l 分層思想

l WebFromCodebehind偽分離還是繼承關係

l MVC 代碼和頁面徹底分離,控制器和視圖都是分別單獨的類型。耦合度最低

10.Asp.Net MVC第一個程式

l 新建一個MVC項目

l 認識Web項目中的Controller

l 認識Web項目中的View

l 認識Web項目中的Model

l 創建一個控制器HomeController,添加一個ShowDemo的方法,然後在方法中往視圖傳遞一個字元串。在ShowDemo方法上創建視圖,併在頁面中展示字元串內容。

11.控制器的約定大於配置

l Controller放到controllers文件夾中,並且命名方式以Controller結尾。

l 每個Controller都對應View中的一個文件夾,文件夾的名稱跟Controller名稱相同。

l Controller中的方法名都對應一個View視圖(非必須,但是建議這麼做)而且View的名字跟Action的名字相同。

l 控制器必須是非靜態類,並且要實現IController介面。

l Controller類型可以放到其他項目中。

12.視圖的相關約定

l 所有的視圖必須放到Views目錄下。

l 不同控制器的視圖用文件夾進行分割,每個控制器都對應一個視圖目錄。

l 一般視圖名字跟控制器的Action相對應(非必須)。

l 多個控制器公共的視圖到到Shared

13.ViewData傳遞數據載體

l ViewDataController的屬性,此屬性是繼承ControllerBase而來。

l ViewPage下也有一個ViewData的一個屬性。

l 控制器的Action方法執行完成後,返回ViewResult,然後MVC框架會執行ExcuteResult方法時,Controller中的ViewData數據傳遞給ViewPage類,其實就是把ControllerViewData賦值給ViewPage頁面的ViewData屬性。

14.用戶案例

l 用戶列表頁面(創建數據、使用SqlHelper),載入用戶列表數據到頁面中。【三層、EntityFramework等不是本次課程的重點】

l 用戶註冊頁面。(校驗後面再補充)

l 目地:熟悉MVC開發的方式、MVC下的請求處理響應的模型

15.HtmlHelper詳解

l 在ASP.Net MVC中微軟並沒有提供類似伺服器端控制項那種開發方式式,畢竟微軟的MVC就是傳統的請求處理響應的回歸。所以之前的那種事件響應的模型,拋棄伺服器端控制項也理所當然。但是如果手寫Html標簽效率又比較低,可重用度比較低。

l 微軟為開發人員快速開發前臺頁面提供了豐富的HtmlHelper的輔助類,輔助我們快速開發前臺頁面,也提供了可擴展的介面,前臺頁面的標簽可以可以做到高度可重用。

l HtmlHelper還繼承了Model元數據的校驗、ViewDataViewBag數據綁定裝配等自動化功能,也是非常實用的功能

l HtmlHelper還提供了強類型標標簽更是在開發階段就實現編譯檢測。提高了編碼的效率。

l HtmlHelper還提供了模板編輯功能、頁面嵌套等功能,後面一一介紹。

16.HtmlHelper的演變。

l 在MVC中所有的請求都歸結到控制器下麵的Action。所以所有的請求都是要指定一個具體的ActionUrl的格式是根據路由規則來定的。比如,預設路由規則中定義請求的地址的格式:{Controller}/{Action}/{id},則請求的url地址應該是:http://localhost/Home/Index/1

l 我們可以看到請求的地址不再跟WebForm中的請求地址就是頁面的相對路徑。而在MVC中請求的地址是一個邏輯地址,而不是物理的路徑

l 在頁面中添加超級鏈接的時候href屬性就有了變化性。也就是當路由規則發生變化的時候,href屬性也必須跟著變化。

l 屏蔽路由規則的變化對a標簽等產生的影響,MVC給我們提供了Url.Action()方法。但是依然非常笨重。

l 最完美的解決辦法就是:HtmlHelper.Action()

17.HtmlHelper各種方法介紹

l ActionLink

 

生成結果:

             

 

l RouteLink

 

生成結果:

 

l Form

 

l TextBox,Hidden

 

l TextArea

 

l CheckBox

 

l DropDownList

  dropDownListTextBox等控制項不同,它使用的是select標記。它需要兩個值:在下拉列表框中現實的列表,和預設選項。而自動綁定一次只能綁定一個屬性,因此您需要根據要選擇是綁定列表,還是預設選項。

DropDownList擴展方法的各個重載版本“基本上”都會傳遞到這個方法上:

 

如果沒有指定selectList,改方法將自動綁定列表,即從ViewData中查找name所對應的值。如果提供了selectlist,將自動綁定預設選項,即從selectList中找到Selected屬性為trueselectedListItem

1:如果在Action方法中有如下代碼:

 

那麼輔助方法將率先從ViewData中獲取keylist的項,如果該項為IEnumerable<SelectedListIItem>類型則綁定到下拉列表框中,否則將拋出InvalidOperationException。異常,由於第二個SelectListItemSelectedtrue,則預設選中第二個。

2:如果Action中代碼如下:

 

那麼輔助方法將ViewData[“list”]綁定為下拉框,然後從ViewData中獲取keyselected的項,並將下拉listValue值與該項的值相等的SelectListItem設為預設選中項。

以上兩種方法儘管可以實現DropDownList的正確顯示,但是並非最佳實踐。在實際項目中,我們更希望在代碼中使用強類型,例如上面例子中,SelectListItemTextValue本來就是User對象的NameAge屬性,然而上面的代碼卻絲毫體現不出這種對應關係。如果User列表是從資料庫或其他外部資源中獲得的,我們難道還要用這種方式來綁定嗎?

 

 

這顯然是我們所無法容忍的。那麼什麼是最佳實踐呢?

ASP.NET MVCDropDownListListBox(都在html中使用select標記)準備了一個輔助類型:SelectListSelectList繼承自MultiSelectList,而後者實現了IEnumerable<SelectListItem>。也就是說,SelectList可以直接作為Html.DropDownList方法的第二個參數。

MultiSelectList包含四個屬性,分別為:

  • Items:用於在select標記中出現的列表,通常使用option標記表示。IEnumerable類型。
  • DataTextField:作為optiontext項,string類型。
  • DataValueField:作為optionvalue項,string類型。
  • SelectedValues:選中項的value值,IEnumerable類型。

顯然,作為DropDownList來說,選中項不可能為IEnumerable,因此SelectList提供了一個新的屬性:

 

  • SelectedValue:選中項的value值,object類型。

同時,SelectList的構造函數如下所示:

 

  於是我們的代碼變為:

 

20.Html.Encode

 

21.HtmlHelper擴展

l 擴展方法的三個要素:靜態類、靜態方法、this關鍵字

l 案例:擴展自定義標簽

l 解決返回的標簽被HtmlEncode的問題

 

 

22.案例:用戶刪除和修改

l 實現用戶的刪除

l 在列表頁面添加一個修改列

l 實現點擊修改鏈接頁面跳轉的修改詳情頁面

l 實現修改頁面邏輯

l 體會雙向數據裝配:控制器的Action在執行之前會自動把請求中數據裝配到Action的方法參數裡面去或者是參數的屬性裡面去。控制器往視圖傳遞的數據會自動裝配到頁面的HtmlHelper生成的控制上去。

23.雙向數據的裝配

l 控制通過ViewData容器把數據傳遞到View之後,View在渲染Html標簽的時候會自動從ViewData中獲取數據進行填充標簽。

l 表單提交到控制器的時候,執行控制器的Action之前會自動將表單中的內容填充到方法的參數或者參數的屬性面去。

l 案例:用戶註冊

24.Razor引擎簡介

l 在MVC3.0版本的時候,微軟終於引入了第二種模板引擎:RazorRazor在減少代碼冗餘、增加代碼可讀性和vs智能感知方面,都有著突出的優勢。Razor一經推出就深受所有Asp.Net開發者的喜愛。

 

25.Razor引擎語法

l Razor文件類型:Razor支持兩種文件類型,分別是.cshtml.vbhtml,其中.csHtml的伺服器代碼使用了C#的語法,.vbhtml的伺服器代碼使用了vb.net的語法。

l @字元是Razor中的一個重要符號,它被定義為Razor伺服器代碼塊的開始符號

l 案例:在頁面中輸出當前日期

<span>@DataTime.Now.Tostring(“yyyy-MM-hh”)</span>

26. Razor語句塊

l 可以使用@{code}來定義一段代碼塊。

l RaZor支持代碼混寫。在代碼塊中插入Html、在Html中插入Razor語句都是可以的。

l 案例:For迴圈嵌套輸出html標簽

 

 

 

27.Razor頁面上輸出特殊字元串

l 輸出原生的字元串:@Html.Raw(html)

l 例如:@Html.Raw(“<h2>Razor</h2>”)

l HtmlString類型和MvcHtmlString類型字元串輸出

l 例如:IHtmlString html=new HtmlString("<font color='red'>文本</font>");

 

28.Razor引擎的註釋

l C#代碼塊可以C#自帶的註釋符合:// /**/

l Razor伺服器端註釋為:@*  註釋內容  *@

29.Razor引擎的轉換數據類型

 

 

30. CKEditorasp.net mvc中的使用:

l 下載CKEditor     http://ckeditor.com/download

l 把解壓後的目錄拷貝到Content目錄中。

 

l ckEditorasp.net mvc中的使用就相當簡單了,只需要在腳本中執行CKEDITOR.replace(id);id 為你需要擁有編輯功能的textareaid

View:

 

 

Controller:

 

這裡要註意[ValidateInput(false)]特性,它的目的是防止在提交時報“檢測到有潛在危險的客戶端輸入值”。

l 運行後的效果圖如下:

 

31.控制器詳解

l 控制器的約定:必須實現IController介面、必須以Controller為結尾、必須非靜態類。

l 在Action中可以訪問HttpContext中所有的相關數據:比如SessionCookie、也可以設置響應總之跟WebFormPage類能做的,在Action中都能做。

l 控制器的Action的各種返回值。

 

 

 

 

 

 

32.深入講解Controller

l 職責 :Controller負責將獲取Model數據並將Model傳遞給View對象,通知View對象顯示。

l 一個Controller可以包含多個Action。每一個Action都是一個方法,返回一個ActionResult實例。

l 一個Controller對應一個XXController.cs控制文件,對應在View中有一個XX文件夾。一般情況一個Action對應一個Aspx頁面。

33.深入講解Routing

l 在項目中我們引用了System.web.Routing

l 微軟將此項目單獨出來,並沒有開源代碼。

l Routing的作用:確定Controller 、確定Action 、確定其他參數、根據識別出來的數據,將請求傳遞給Controller和<

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

-Advertisement-
Play Games
更多相關文章
  • 按[Ctrl+Shift+F]彈出查找視窗(不統計以#號開頭、以/開頭的代碼和空行) 1、輸入 :b*[^:b#/]+.*$ 2、選擇使用正則表達式 3、查找文件類型,*.cs多種類型用分號(;)隔開 點擊查找全部(查找結果如下) ...
  • 在WPF中 控制項綁定數據源時,數據源建議採用 ObservableCollection<T>集合 ObservableCollection<T> 類:表示一個動態數據集合,在添加項、移除項或刷新整個列表時,此集合將動態提供通知。數據源發生更改時,控制項內容也自動發生相應修改。無需重新綁定。 list< ...
  • 在上一篇博客中,筆者分享了一些從頁面整體的角度對頁面與ViewModel的思考。在本文中筆者希望從相對細節的角度分享一些對頁面與ViewModel的思考。 比如,當我們在更新View Model中的綁定數據時,應該怎樣更新呢?簡單的自然可以用新的數據實例直接替代舊的,但是這樣容易造成UI界面閃爍。尤 ...
  • 在很多情況下,我們利用IOC控制反轉可以很方便實現一些介面的適配處理,可以在需要的時候切換不同的介面實現,使用這種方式在調用的時候,只需要知道相應的介面介面,具體調用哪個實現類,可以在配置文件中動態指定,本篇主要介紹AutoFac的IOC組件的使用,用來實現微信介面處理的控制反轉功能。 ...
  • 工具:svcutil.exe 參數:指定wsdl、輸出源碼文件、輸出配置文件 示例: D:\>svcutil.exe http://localhost:8087/DataService/?wsdl /out:Client.cs /config:app.configMicrosoft (R) Serv ...
  • 密封類 密封類使用sealed修飾符聲明。 密封類中不可能有抽象方法【因為:抽象方法必須在抽象類中,而抽象類不能是密封的或者是靜態的,也就是說abstract 和sealed不能同時修飾一個類】 ...
  • 抽象類使用abstract修飾符聲明; 不能創建抽象類的實例; 抽象類只能用作其他類的基類; 抽象類中可以包含抽象成員和普通的非抽象成員; 抽象類自己可以派生自另外一個抽象類; 任何派生自抽象類的【類】,必須使用override關鍵字,實現該類所有的成員,除非派生類自己也是抽象類。 示例: 1.基類 ...
  • 技術綜合 《小黃鴨調試法,每個程式員都要知道的》 《開發一個這樣的 APP 要多長時間?》 《一段代碼讓你覺得人類智慧可以璀璨無比》 《成人網站有多大?》 《輸入Google網址回車之後發生了什麼?》 《為什麼有些大公司技術弱爆了?》 《高效 MacBook 工作環境配置》 《如何編寫讓別人能讀懂的 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...