.NET FrameWork架構
是一套應用程式開發架構,主要目的提供一個開發模型。
主要的兩個組件:
通用語言執行平台(Common Language Runtime)(CLR):
提供記憶體管理、線程管理和遠端等核心服務,並且還強制實施嚴格的安全類型,提高代碼的安全性和可靠想。
.NET Framework類庫:
與CLR緊密整合,可以使用它開發多種應用程式和服務。主要包括控制台應用程式、Windows表單應用程式、WindowsPresentationFoundation(WPF)應用程式(一個類庫和一組API,用於建立在Web服務與用戶端之間發送訊息的系統)、ASP.net網站、Web服務、Windows服務、基於WCF的面向服務應用程式和WF的啟用工作流程的應用程式等。
ASP.NET是什嗎?
Active Server Pages(動態伺服器頁面,運行於IIS之中的程式)
ASP.net是一個統一的Web開發模型,能使用盡量少的代碼產生企業級的ASP.net網站所必須的各種服務。
1 、與Framework完美結合。
對於Framenwork架構,在開始已經解釋。
2、ASP.net是編譯型還是解釋型?
是編譯型:1) ASP.net網頁首次被訪問,將編譯成微軟中繼語言(MicrosoftIntermediate(中間的) Language,MSIL)。2)ASP.net頁面實際執行前,MSIL代碼將以即時編譯(Just-In-Time,JIT)形式被編譯成機器語言。
IIS(Internet Information Services資訊服務)
提供了整合、可靠Web伺服器功能,運行ASP.net網站需要IIS支援。
IIS(互連網資訊服務)是一種Web網頁服務元件,分別用於網頁瀏覽、檔案傳輸、新聞服務和郵件發送等方面,使得在網路上發布資訊變的容易。
通俗的講:
IIS,就是一個網頁伺服器。允許你把用HTML格式的網頁檔案放到一個連在網路上的電腦上面,供別人瀏覽。就像新浪網站一樣,把它的全部檔案,放到一個連在網路上的電腦上,設定一個預設目錄,我們只要在在瀏覽器中輸入新浪的網址,就可以訪問了。
HTM檔案和XHTML檔案
.htm是一種靜態網頁檔案,不包含任何的伺服器控制項,由html元素組成。用戶端瀏覽訪問.htm檔案時,IIS不經過任何的處理就能直接送往瀏覽器、由瀏覽器解釋執行。
XHTML(eXtensible Hyper Text Markup Language )用於代替HTML語言。它能被所有的瀏覽器識別,是網頁產生的基礎。所有包含ASP.net元素的動態網頁檔案最終都要轉化為相應的XHTML才能被瀏覽器識別。
.aspx檔案
.aspx檔案,作為完全物件導向系統,web表單直接或間接繼承System.Web.UI.Page類。
每個Web表單包含兩部分:一部分是處於<body>元素之間的顯示介面代碼,包括XHTML元素和伺服器控制項的介面定義資訊。另一部分:包含事件處理C#等代碼
.CSS檔案和CSS常識
(Sascading StyleSheet 階層式樣式表,CSS)
為什麼要用CSS?
XHTML能限定瀏覽器中網頁元素的顯示格式,但可控制性不強,如果想要統一網站的風格需要逐一去改,不方便,於是有了CSS。CSS在XHTM的基礎上,提供了精確的定位和重新定義XHTML元素屬性的功能,一個CSS樣式可以作用於多個網頁,這樣再修改的時候就方便多了。
CSS常識
由選取器和聲明兩部分組成。
我們如何在我們的網頁中應用CSS樣式呢?
有三種方法可以選擇(位置不同劃分):
1)內聯樣式,簡單說就是使用的html的Style屬性。該屬性可以應用於任意的body元素。
2)內部樣式,在htmlStyle屬性中設定。
3)外部樣式表,引用一個.css樣式表檔案
CSS樣式(優先順序依次升高。)
基於元素樣式。重新定義html屬性。
p{margin-left:25px; margin-right:25px;}
基於類的樣式。
.intro{ color :#ff0000;}
基於ID的樣式。
#menubar{ background-color:#008000;}
.js檔案和JavaScript常識
JavaScript是由NetScape公司開發的基於對象和事件驅動的解釋型語言,作為一種指令碼語言可以直接嵌入到html頁面中,不需要web伺服器端的解釋執行即可由瀏覽器實現動態網頁處理。幾乎或有的瀏覽器都支援JavaScrip。
JavaScrip主要用途:
在XHTML中建立動態文本。
響應用戶端事件。
可以讀取並改變XHTML元素的內容。
在資料交到伺服器之前驗證這些資料。
可以檢測訪問者的瀏覽器,並根據檢測瀏覽器類型載入相關頁面。
用來建立Cookies。
關閉視窗。
在頁面上顯示時間。
代碼位置:
在<head>中。
<html> <head> <title>head中元素的JavaScript</title> <script type="text/javascript"> function message() { alert("在head中") } </script> </head> <bodyonloadbodyonload="message()"> </body> </html>
效果:
在執行<body>時,觸發load事件再調用message()函數,最後在瀏覽器中顯示。
在<body>中
代碼省略。
在獨立的.js檔案中。
獨立的js檔案用於多個頁面調用javaScript的情況,可以把指令檔放到一個檔案夾中。
.XML檔案和XML常識
Extensible markup language 可延伸標記語言 (XML)
xml檔案常用於解決跨平台交換資料的問題,這種格式已經成為Internet資料交換標準格式。與XHTMl比較,XHTML被設計用來顯示資料,而XML用來傳輸和儲存資料。
Web.config檔案
網站的設定檔是一個XML格式檔案,用來儲存配置資訊,他們出現在多個檔案中,並形成層次關係。
最高層的設定檔是machine.config,有預設的安裝路徑,儲存了網站的基本配置資訊,通常我們不需要修改。下一層的就是web.config,再下一層是子檔案夾的web.config,是繼承關係,作用範圍是在本檔案夾以及他的所有的下級。
C#特點:
1、C#代碼在.NET Framework提供的環境下運行,不允許直接操作記憶體,增強了系統的安全性。
2、C#不推薦使用指標,若要使用指標,就必須添加unsafe修飾符,並且在編譯時間使用/unsafe參數。
3、統一類型系統。所有C#類型都繼承於一個唯一的根類型 object。
4、使用C#能構建健壯性應用程式。C#的記憶體回收將自動回收不再使用的對象所佔的記憶體;異常處理;型別安全設計避免了未初始設定變數、數組索引超出邊界的情形。
5、完全支援組件編程。容易的建立和使用這些軟體的組件。
Framework常見命名空間
System:提供基本類,如提供字串操作的String類。
System.Configuration:提供處理設定檔中的資料類,如能擷取web.config檔案中資料庫連接字串的ConnectionStringSettings類。
System.Data:提供對ADO.NET類的訪問,如我們常用的DataSet類(提供資料緩衝)。
System.Ling:提供使用LINQ進行查詢的類和介面。
System.web:提供使用瀏覽器與伺服器互相通訊的類和介面,如用於讀取用戶端的HttpRequest類。
System.Web.Security:提供在Web伺服器實現ASP.net安全性的類。
System.Web.UI:提供用於建立ASP.net網站使用者介面的類和介面,如每個Web表單的Page類。
System.Web.UI.Htmlcontrols:提供在Web表單頁上建立HTML伺服器控制項類。
System.Web.UI.WebControls:提供在Web表單上穿件Web伺服器控制項類。
System.Xml.Linq:提供用於LINQ to XML的類。
ASP.NET標準控制項
HTML伺服器控制項:
將所有的html標記對象化,讓程式可以直接控制,弄出了HTML控制項。為了實現對html控制項的編程,我們要把XHTML控制項轉化為html伺服器控制項,也就是在控制項的屬性中加上:runat="server"。如果僅僅是html標記元素,我們如法在Web表單訪問,是由瀏覽器解釋執行的。為了讓ASP.NET更很好的控制,出現了Html控制項以及Html伺服器控制項。
Web伺服器控制項:
不與XHTML的元素對應,可以描述元素的外觀,操作方式和行為,然後由ASP.NET確定如何輸出該頁面。
看完天轟穿老師的ASP.net控制項視頻,大概知道Web伺服器控制項可以分為:
標準控制項:除了表單之外(表單也可以看做特殊的控制項)的常用的控制項,例如按鈕,文字框下拉框,用途類的日曆等。
資料控制項:串連資料庫和顯示資料中的資料等。GridViewDataList等。
驗證控制項:用於控制使用者資訊的輸入。
導航控制項:用於網站導航。TreeView Menu等
登陸控制項:用於網站的使用者註冊,使用者管理等。
WebParts控制項:網站入口,定製使用者介面。
AJAXExtensions控制項:用於更新頁面局部資訊而不往返整個頁面資訊。
使用者自訂控制項:擴充系統功能,保持網站一些統一風格。
比較:
HTML控制項佔用資源少,但是不能與後台進行互動。如果要互動就要轉為HTML伺服器控制項。Web伺服器控制項在編譯的時候需要"翻譯"為HTML控制項,再傳送給瀏覽器,比較耗費伺服器資源。
看完了小編整理的這篇文章是不是對ASP.NET基礎知識有了大概的瞭解,喜歡的朋友們收藏起來吧