lt;%%gt;创建内联代码块(表达)
? ? 其實<%%>很早之前見過它,將一個小的功能僅。別人不理解。今天偶爾,我們看到它的真面目,今天,給大家分享。
語法
? ? 代碼塊呈現(<%%>)定義了當呈現頁時運行的內聯代碼或內聯表達式,它的詳細語法例如以下:
???????? <%code%>//內聯代碼
???????? <%=expression%>//內聯表達式
? ? 使用內聯代碼能夠定義獨立的行或代碼塊。
它是呈現頁面的過程中運行的server代碼。
關于嵌入式代碼塊的使用說明,例如以下:ASP.NET網頁中支持嵌入式代碼塊。主要用于保留與舊的ASP技術的向后兼容性。
普通情況下。將嵌入式代碼塊用于復雜的編程邏輯并非最佳做法,由于當頁中的代碼與標記混合時,非常難進行調試和維護。
此外,由于代碼將在呈現頁的過程中運行。因此與將代碼至于適當的頁處理階段以運行后臺代碼或腳本塊代碼相比,靈活性大大減少。
? ? 嵌入式代碼塊的部分用途包含:
???????? 將控件元素或標記元素的值設置為函數返回的值。
???????? 將計算直接嵌入到標記或控件屬性中。
演示樣例
? ? 演示樣例1:在頁面上輸出5行標記為“信息技術提高班”的字符串。執行效果如圖:
代碼例如以下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="TestLocalData.WebForm1" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>測試內聯代碼</title> </head> <body><form id="form1" runat="server"><div><!--打印5行字符串--><%for (int i = 1; i <=5; i++) %><%{ %><%Response.Write("信息技術提高班"); %><br /><%} %></div></form> </body> </html>? 演示樣例2:內聯表達式是調用Write方法的快捷方式。<%=expression%>用于解析表達式。并將其值返回到塊中。
下面演示樣例代碼通過使用內聯表達式顯示GetTime方法的值。執行效果如圖所看到的:
代碼例如以下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="TestLocalData.WebForm2" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>測試內聯表達式</title><script runat="server">protected String GetTime() {return DateTime.Now.ToString("t"); //獲取當前時間hh:mm}</script> </head> <body><form id="form1" runat="server"><div>當前時間是:<%=GetTime() %></div></form> </body> </html>? 注意:代碼塊中的代碼必須使用該頁的默認語言進行編寫。
比如。假設該頁的@Page指令包括屬性language=”C#”,則該頁將使用Visual C#編譯器對標有runat=server的全部腳本塊中的代碼。以及<%%>代碼塊中的全部內嵌代碼進行編譯。
????????
? 演示樣例3:應用<%%>代碼塊來實現ASP.NET中簡單的屬性綁定。
? ? 首先了解什么是數據綁定。數據綁定不僅能夠直接輸出一般輸出語句能夠輸出的數據類型,還能夠輸出不論什么一種符合數據綁定要求的數據源。并且對于不同的數據顯示控件對數據源的處理能夠不一致,也能夠依據情況的改變而動態地發生變化。也就是說,在數據綁定中,數據的顯示是由數據源和數據顯示控件共同決定的。數據源決定數據的內容,數據顯示控件決定數據的顯示方式。實際上,數據綁定的作用機制就是由數據顯示控件調用數據源的方法得到數據的。
? ? 數據綁定的語法例如以下:
???????? <語言標記…屬性’<% 數據綁定表達式 %>’runat=”server”>
? ? 假設將表達式的結果直接輸出到網頁上。那么數據綁定的語法例如以下:
? ? ? ? ?字符串:<% 數據綁定表達式 %>
? ? 演示樣例執行結果如圖:
以下介紹程序實現的主要步驟(正常情況下應該從數據庫中獲取。這里為了演示方便就綁定死的數據了):
(1)新建一個aspx頁面。在前臺頁面代碼中定義兩個公共屬性,這兩個屬性作為綁定數據時的數據源;之后應用<%%>代碼塊將它與顯示控件之間建立綁定關系。完整演示樣例代碼例如以下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm3.aspx.cs" Inherits="TestLocalData.WebForm3" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>數據綁定表達式測試</title><script runat="server">public String Name {get { return "lc"; }}public String Sex {get { return "male"; }}</script> </head> <body><form id="form1" runat="server"><div>簡單屬性綁定<br />姓名:<%#Name %><br />性別:<%#Sex %></div></form> </body> </html>? 說明:基于屬性的數據綁定所涉及的屬性必須包括get訪問器。由于在數據綁定過程中。數據顯示控件須要屬性的get訪問器中從屬性中讀取數據
(2)綁定完畢之后,僅僅須要在頁面的Page_Load事件中調用Page類的DataBind方法,來實如今頁面載入時讀取數據。代碼例如以下:protected void Page_Load(object sender, EventArgs e) {Page.DataBind(); } ? ? 我們在見到一個陌生的知識或者名詞之后不應該僅僅是停留在會用的層次上,而應向“知其然知其所以然”靠攏,了解來龍去脈,哪怕掌握不了。最起碼也要知道。對于常常使用的知識點擴展查完之后還須要進行消化、實踐,這樣才干拓展自己的眼世界。并能面對知識變種后從容面對。
版權聲明:本文博客原創文章,博客,未經同意,不得轉載。
轉載于:https://www.cnblogs.com/bhlsheji/p/4725388.html
總結
以上是生活随笔為你收集整理的lt;%%gt;创建内联代码块(表达)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 屏幕尺寸知识
- 下一篇: HDU 2546(01背包)