国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
ASP.NET中級學習

1.     特殊路徑標志“~

和“/”表示網站根目錄(跟域名相關),../表示上級目錄、./表示當前目錄等Http標準定位不一樣,“~”,~ASP.NET定義的特殊符號,是ASP.NET內部定義推薦的方法,推薦資源定位都使用“~”從應用根目錄開始定義。

編程處理“~”,如果在服務器控件中,會自動將~進行轉換,如果在html控件或者需要在代碼中轉換可以使用VirtualPathUtility類中的靜態(tài)方法進行虛擬路徑、全路徑等的轉換,比如VirtualPathUtility.ToAbsolute(“~/a/b.sapx”)

 

2.     Request對象

Response.Write(Request.AppRelativeCurrentExecutionFilePath);//獲取應用程序在網站內的虛擬路徑

//比如這個例子將打印出的虛擬路徑為~/Request/RequestTest.aspx

Response.Write("<br/>"+Request.PhysicalApplicationPath);//獲取當前程序的物理路徑(服務器硬盤中的路徑)

//比如這個例子的E:\學習資料\ASPNET\ASP.NET中級學習\

Response.Write("<br/>"+Request.PhysicalPath);//打印出當前頁面的物理路徑

//E:\學習資料\ASPNET\ASP.NET中級學習\Request\RequestTest.aspx

 

Request.UrlReferrer防盜鏈,判斷圖片頁面的UrlReferrer是否來源于本站,不是的話就給出提示信息和相關處理。

 

Response對象

響應的緩沖輸出:為了提高服務器的性能,ASP.Net向瀏覽器write的數據默認并不是沒write一次都會立即輸出到瀏覽器,而是會緩存數據,到合適的時候或者響應結束才會將緩存區(qū)中的數據一起發(fā)送到瀏覽器。

 

Response對象的主要成員:

1.Response.BufferResponse.BufferOutPut,兩個屬性是一樣的,Buffer內部就是調用的BufferOutPut。這個屬性用來控制是否采用響應緩存,默認是true。(除非有特殊需求,一般不用去改它)

 

2.Response.Fush()將緩沖區(qū)的數據發(fā)送到瀏覽器,如果需要將wirte出來的數據立即輸出到瀏覽器的場合,用這個是非常合適的。案例:大批量數據的導入,顯示正在導入第幾條數據,用Thread.Sleep模擬耗時。

context.Response.ContentType = "text/html";

        for (int i = 1; i < 20; i++)

        {

            System.Threading.Thread.Sleep(500);

            context.Response.Write("第"+i+"步執(zhí)行完成<br/>");

            context.Response.Flush();  //可以看到瀏覽器中的數據一條一條的打印出來,而不是之前那樣刷一下全部打印出。

        }

3.      Response.Clear()  清除緩沖區(qū)中的內容,這樣做,緩沖區(qū)內的數據直接刪除掉。

4.      Response.ContentEncoding 可以用來設置和獲取輸出流的編碼格式,但一般情況下不必設置。

5.      Response.ContentType  輸出流的內容類型,比如是htmltext/html)還是普通文本(text/plainJPEG圖片(image/JPEG

 

6.      Reponse.Cookies返回給瀏覽器的cookie的集合,可以通過它設置cookie。但是我們可以直接用Response.SetCookie(c);其實內部處理,它幫你Response.Cookies.Add(c);

 

7.  Response.OutPutStream輸出流,在輸出圖片、excel文件等非文本文件的時候要使用它。例如:bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);將一個圖片輸入到瀏覽器中。

 

8.  Response.End();終止頁面請求,不再往下執(zhí)行了。將之前緩存中的數據發(fā)送到瀏覽器,在終止一些非法請求的時候,比如盜鏈等可以用End()立終止請求。

Response.Write("當ì?à前??網a?站?禁?止1訪¤?問¨o!ê?");

Response.End(); //終止請求。不再往下執(zhí)行了。

Response.Write("你看不到我!");

 

9.        Response.Redirt(“http://www.rupeng.com”);重定向到新的頁面,新的資源(如圖片等),可以導航本站之外的網址。

10.    Response.SetCookie(HttpCookie cookie),向輸出流中更新寫到瀏覽器中的cookie。是對Response.Cookies的簡化調用。

11.    Response.Write()向瀏覽器輸出內容。

12.    Response.WriteFile()向瀏覽器中輸出文件,比如Response.Write(“c/boot.ini”);

 

 

Server對象

Server是context的一個屬性,是HttpServerUtility類的一個對象

Server.HtmlDecode() , Server.HtmlEncode()  html編碼,防止xss漏洞

Server.UrlDecode()   server.UrlEncode()   網站url地址編碼。處理超鏈接的。

用HttpUtility也能點出這四個方法,因為有的地方很難拿到Server對象。

 

Server.Transfer()內部重定向請求,將用戶的請求重定向給另一個頁面處理,是服務器內部的接管,瀏覽器是意識不到這個接管的。不像Response.Redirect那樣經歷:通知瀏覽器重新訪問url地址—>瀏覽器接受命令訪問另一個頁面à返回給用戶這個過程。因此瀏覽器地址欄不會變化。因為是內部接管,所以在被重定向到的頁面中是可以訪問到Request,cookies等這些來源頁面接受的參數的,就像這些參數也是傳遞過去一樣。

注意Transfer是內部接管,因此不能像Redirect那樣重定向到外部網站。

 

使用Server.Transfer不能直接重定向到ashx,否則會報錯“執(zhí)行子請求出錯”

有時候不能拿到HttpContext對象,比如在Global.asax,可以通過HttpContext.Current拿到當前的HttpContext,進而拿到Response,Request,Server等。

 

HttpHandler1

1.      動態(tài)生成搞笑圖片,在某個圖片的某個位置動態(tài)的寫入字符串,其功能就跟logo網站生成圖片一樣。

 

2.  讓瀏覽器彈框下載:如果輸出的是html,txt,jpeg等類型的信息,瀏覽器會直接顯示,如果希望彈出保存對話框,則需要添加Header:context.Response.ContentType = "image/JPEG";

string filename = HttpUtility.UrlEncode("楊鳳輝.jpg");

context.Response.AddHeader("Content-Disposition","attachment;filename="+filename);//添加報文頭到輸出流

context.Response.WriteFile("楊鳳輝.jpg"); //把文件寫到瀏覽器輸出流中。

 

添加報文頭,讓瀏覽器以attachment的形式打開文件(即下載附件)

 

 

application/x-excel 下載Excel表格時候的內容類型 ContentType=” application/x-excel”。 application/octet-stream 下載所有文件都ok。

 

動態(tài)創(chuàng)建Excel表格

context.Response.ContentType = "application/x-excel";

            string filename = HttpUtility.UrlEncode("動態(tài)數據.xls");context.Response.AddHeader("Content-Disposition","attachment;filename="+filename);

//建立新的 Excel 工作簿 

HSSFWorkbook hssfworkbook = new HSSFWorkbook(); 

  //在 Excel 工作簿中建立工作表,名稱為 Sheet1 

HSSFSheet sheet1 = hssfworkbook.CreateSheet("bitch"); 

  //寫入資料到工作表中 

sheet1.CreateRow(1).CreateCell(0).SetCellValue("hello"); 

sheet1.CreateRow(2).CreateCell(0).SetCellValue("3.14"); sheet1.CreateRow(3).CreateCell(0).SetCellValue("Are you bitch??"); //將新建的Excel表格寫到瀏覽器緩沖區(qū)中。  hssfworkbook.Write(context.Response.OutputStream);

 

圖庫練習:登錄處理,防暴力破解:在用戶表里面增加兩個字段,一個是鎖定標志IsLock,和一個鎖定后一定時間后方可重新試登錄的OpenTime地段。

如果用戶連續(xù)五次登錄密碼都錯,那么就設置IsLock為1,同時開放時間為當前時間加上30分鐘。

if (user.IsLock == 0) //防暴力破解

{

if (tryCount < 5)

{

tryCount++;

if (user.PassWord == TextBox2.Text.Trim())

{

tryCount = 0;

Session["UserId"] = user.Id;

Session["UserName"] = user.UserName;

Response.Redirect("PicDownload.html");

}

else

{

Label1.Text = "密碼錯誤!";

}

}

else

{

adapter.UpdateDataByUserName(1, DateTime.Now.AddMinutes(2), TextBox1.Text.Trim());

Label1.Text = "五次嘗試密碼均錯該賬戶已被鎖住,請三十分鐘后再試!";

tryCount=0;

}

                       

}

else if (user.IsLock == 1)

{

if(DateTime.Compare(user.OpenTime, DateTime.Now) > 0)

{

Label1.Text = "該賬戶已被鎖住,請三十分鐘后再試!";

}

else

{

adapter.UpdateDataByUserName(0, null, TextBox1.Text.Trim());

tryCount++;

if (user.PassWord == TextBox2.Text.Trim())

{

tryCount = 0;

Session["UserId"] = user.Id;

Session["UserName"] = user.UserName;

Response.Redirect("PicDownload.html");

}

else

{

Label1.Text = "密碼錯誤!";

}

}

}

在一般處理程序頁面中,如果需要用到session的話,必須先讓這個頁面的類實現IRequiresSessionState接口

功能:指定目標Http處理程序需要對回話狀態(tài)值具有讀寫訪問權利,這只是一個標志接口,沒有任何方法。

public class PicDownload : IHttpHandler, IRequiresSessionState

下載圖片處理

T_UsersTableAdapter adapter = new T_UsersTableAdapter();

                var data = adapter.GetDataById(int.Parse(context.Session["UserId"].ToString()));

                var user = data.Single();

                if (user.Level == 1)

                {

                    string PicPath = "~/img/"+filename;

                    if (PicPath.IndexOf('.')!=6)

) //此處有漏洞風險,防止用戶通過拼湊請求參數的方法非法下載網站內源代碼。

                    {//PicDownload2.ashx?FileName=../PicDownload2.ashx.cs.這樣就可以下載了,所以要判斷下載的文件路徑是否在img目錄下的,如果不是則不讓下載。

                        context.Response.WriteFile(PicPath);

                    }

                }

 

 

 

 

M秒后自動跳轉到其他頁面:

1.<meta name=”refresh” content=”3” url=b.htm”>

2.JavaScript 的定時器。

 

 

Select ISNULL(ErrorTimes,100) from T_users

如果ErrorTimes字段為null,就設為100

 

WebForm 1

WebForm分為兩個文件aspx和aspx.cs,aspx是 面模版,是頁面描述文件,就是html的內容,和aspx結合的更好,不用像一開始那樣程序員自己去填充模版,空間都是定義在aspx中,內聯的javascript,css都是現在aspx中的,服務端的C#代碼定義在aspx.cs中,Aspx控制頁面的長相,cs控制程序邏輯,種前aspx后cs的方式被稱為CodeBehind。

 

相當于以前的html+ashx的模式。Aspx就是”模版引擎”

cs可以調用aspx中的控件,aspx中也可以訪問cs中定義的字段、函數,還可以編寫復雜的C#代碼,for等所有C#代碼都可以寫在aspx中。(不推薦這樣)

<%for (int i = 0; i < 10; i++){%>您好!<%} %>

可以在頁面上寫一些簡單的代碼---跟jsp一樣。

 

<%=myName %>  “=”表示輸出表達式。myName是后臺cs代碼中定義的屬性。

<%=getName(); %>  getName()是一個方法。屬性方法的成員級別必須是protected或者是public,不能是private的。

 

Aspx于cs之間的關系。

 

aspx、cs、dll之間的關系。

 

Response.Write(this.GetType()+"<br/>");//取得當前對象的類

Response.Write(this.GetType().Assembly.Location+"<br/>");//取得但前對象的assembly地址。

Response.Write(this.GetType().BaseType+"<br/>"); //取得當前對象的父類

Response.Write(this.GetType().BaseType.Assembly.Location + "<br/>"); //取得當前對象的父類的assembly地址

當前頁面執(zhí)行時的類是后臺代碼類的一個子類。前后臺之間是繼承關系。

 

Page類

 

Page類成員:

1.Request,Response,Server屬性:對context.Request, context.Response, context.Sever的簡化調用。

1.      AppRelativeVirtualPath 屬性:獲得頁面相對于應用根路徑的路徑,比如:~/Default.aspx

2.      FindControl(crlId),根據控件的id找到控件。一般情況下直接在代碼中寫控件的id引用控件就可以了,但是對于一些場合:使用ListView等控件的模版、編寫自定義控件等則需要使用FindControl來引用控件,FindControl返回值是Control  (TextBox)FindControl(“TextBox1”).Text=“aaa”;

3.      IsPostBack ,Session.

4.       ResolveClientUrl(url)將虛擬路徑轉換為客戶端訪問時的路徑。比如ResolveClientUrl(“~/a/b.aspx”)結果是a/b/aspx,這通常在ListView等控件的模版中輸出html使用?;揪褪菍irtualPathutitlity.ToAbsolute的簡化調用。

 

ASP.Net服務器端基本控件介紹。

 Aspx.Net服務端控件是asp.net對HTML的封裝,asp.net會將服務端控件渲染成html代碼輸出給瀏覽器。服務端控件是asp.net非常吸引初初學者、非常容易上手的東東,也是最被人詬病的東西。但是,物盡其用,服務端控件在內網系統、互聯網系統的后臺部分等訪問頻率不高的地方用的還很適合的。

(如果用的不好,會產生很多viewstate等不需要用到的代碼,還有,asp.net服務端控件是通過post提交的,get方法也可以,但幾乎沒法用,很多場合,特別是在開發(fā)互聯網程序,用post是很麻煩的。)

Asp.net應用是有限制的,比如開發(fā)一個企業(yè)的進銷存系統(企業(yè)內部用的),不是一種互聯網系統,互聯網系統的后臺,開發(fā)就很方便簡單。做互聯網前臺,對服務器控件就要有所取舍,也不是完全不用。

 

Asp.net簡單易用,不要因為它簡單就不屑,我們應該調整好心態(tài),怎樣利用簡單的東西早出復雜的系統,這才是我們需要做的。

 

asp.net控件,大部分都是從Control,WebControl類繼承的,幾乎都有的成員:1.ClientID。獲得控件在客戶端的ID。

document.getElementById('<%=TextBox1.ClientID %>').onmouseover = function () {this.style.background = 'red';}

在客戶端通過javascript和jquery等操作控件時,必須要用('<%=TextBox1.ClientID %>').的方法取得控件id。好習慣(有時候客戶端和服務端的ID會不同。)

 

2.Visible屬性,控件是否可見,如果Visible=false是不會渲染到HTML中的,這和在HTML中給元素style.display=’none’效果是不一樣的。

 

3. CssClass控件的css style屬性

4.Attributes 用來設置獲取控件的額外屬性。和Dom中的setAttribute(),getAttribute()是一樣的。

Button1.Attributes[“a1”]=”2.jpg”;

Button1.Attributes[“onmouseover”]=”alert('Hello man’)”;

 

基本控件:

1.      Label控件,用來顯示文本,在客戶端渲染成<span id=”Label1”>姓名</span> <span></span>跟div的區(qū)別,div占用一個區(qū)域,而span則放在哪就顯示在那里。Label控件如果設置了 AssociatedControlId屬性,它就會被渲染成相應控件的Label,點擊Label,關聯的控件就得到焦點。<label for=”TextBox1” id=”Label1”>姓名</Label>

2.      Literal控件不渲染任何元素。純文本顯示在客戶端。設置了Mode屬性為Encode后,文本還會自動的進行HTML編碼。

3.      TextBox控件,文本框控件,TextMode屬性取值SingleLine,MultiLine、Password,分別渲染成intput(type=text)、textarea、input(type=password)、當AutoPostBack屬性為true的時候,用戶焦點離開TextBox就會造成Post,實現原理就是講Asp.net原理時的AutoPostBack. 用javascript提交表單,_doPostBack( );在ASP.Net中要提交表單的時候,最好直接調用_doPostBack(); TextChanged事件,文本發(fā)生變化的時候事件觸發(fā)。

4.      RadioButton控件,渲染為input(type=radio),通過GroupName屬性進行分組。

 

5. Button控件。OnClientClick屬性,當用戶點擊按鈕的時候,在瀏覽器端執(zhí)行的代碼,注意OnClientClick是字符串屬性,寫的代碼是javaScript代碼,運行在瀏覽器端。<asp:Button ID=”btnDel” ruant=”server” onclientclick=”return confirm('真的要刪除嗎?’)” Text=”刪除”/>

 

6.LinkButton控件。在客戶端渲染成一個超鏈接:這是一個特殊的超鏈接:      <a id="LinkButton1" href="javascript:__doPostBack( )">LinkButton</a>點擊它就提交表單,相當于一個按鈕。

7.ImageButton控件??蛻舳虽秩境蒳nput(type=image)

<input type="image" name="ImageButton1" id="ImageButton1" src="../img/Abu.gif" />

 

8.Button,LinkButton,ImageButton等控件都有 CommandName,CommandArgument兩個屬性和Command事件,可以讓多個按鈕控件共享一個Command時間處理函數,通過讀取事件對象e的CommandNam、CommandArgument兩個屬性讀取被點擊按鈕設置的這兩個參數來執(zhí)行不同的操作。例如:編輯、刪除多行數據。這種用法在ListView等控件中用的最多。

 

9.Panel控件,一般渲染成一個div。但如果設置了GroupingText屬性后:會渲染成fieldset。

<fieldset><legend>Panel組件</legend></fieldset>

 

10.HyperLink 超鏈接:引用站內資源的時候比較方便,自動幫你轉換路徑,如果引用互聯網地址如百度,則直接用<a>標簽就ok了,減少服務器的負擔。

 

11.FileUpload 文件上傳:渲染成:input(type=file)

<input type="file" name="FileUpload1" id="FileUpload1" />

要預防WebShell漏洞:上傳可執(zhí)行的頁面到服務器,然后在設法訪問它,讓他執(zhí)行并破壞網站。

注冊練習:

驗證碼的生成:

public void ProcessRequest(HttpContext context)

        {

            string str="";Random r=new Random();

            for (int i = 0; i <= 4; i++)

            {

                int j=r.Next(10);

                str = str + j;

            }

            context.Session["YanZheng"] = str;

            context.Response.ContentType = "image/JPEG";

            using (System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(55,20))

            {

                using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap))

                {

                   g.DrawString(str, new System.Drawing.Font("宋?體??", 14), System.Drawing.Brushes.Red, 0, 0);

                  }

                bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);

            }

        }

C#中的正則表達式于js中差不多

 

 

三種控件:

HTML控件,Asp.Net把控件當成普通的字符串渲染到瀏覽器端,不去檢驗正確性、無法在服務器端進行處理。(元素寫錯了也不會報錯)

 

Asp.net服務端控件,進過Asp.net高度封裝的控件,使用簡單,運行在服務器端,可以在服務器端使用C#代碼進行操作,會渲染到客戶端為HTML控件。

 

runat=server的HTML控件。在HTML控件的基礎上添加 runat=server,也是運行在服務器端的,也可以使用C#代碼進行操作,也會渲染到客戶端,不像Asp.net服務器控件那么高度封裝,暴露的屬性大部分是普通HTML屬性。和Asp.net服務器控件相比的好處是:當需要在服務器端對控件進行操作的時候,如果控件沒有被Asp.net服務端控件封裝的時候,用ruant=Server的html控件很方便,runat=Server的html控件也會對虛擬路徑、id->ClientID進行處理,所以在虛擬路徑、usercontrol中也可能會用到 (可以用來操作超鏈接,<tr><td>

 

div等非控件加runat=server后,會變成HtmlControls.HtmlGenericControl類型的控件

封裝了一些屬性,如果想操作其他未封裝的屬性如“class”css樣式類,可以通過div1.Attributes["class"] = "error"; 進行操作,這樣的話,就可以使得div的樣式為:error了。

 

a-àHtmlAnchor;   form-àHtmlForm;   head-àHtmlHead;

inputàHtmlInputButton  HTmlInpuCheckBox  HtmlInputText等、metaàHtmlMeat;  HtmlTable、HtmlTableRow  HtmlTableCell; HtmlTitle .未單獨封裝(如div)對應類型為HtmlGenericControl。使用Attributes屬性操作為封裝的屬性。

 

驗證控件:

不能為空校驗:InitialValue="請?zhí)顚懶彰?nbsp;設定初始值,當控件是該值時,認為空。

頁面中的IsValid屬性用來判斷頁面中的所有Validator是否都校驗通過了,只有都通過了才為True,幾時頁面中的Validator服務端校驗報錯,在服務器端方法中的業(yè)務代碼也會被執(zhí)行,因此如果代碼在數據校驗不通過時不讓執(zhí)行,則需要判斷IsValid的值。

<span style="display:none">看不到我</span> 不占據空間

<span style="visibility:hidden">看不到我</span> 會占據空間

驗證控件都有display屬性,用來決定如何顯示錯誤信息。有三個值:static:沒有錯誤信息的時候控件的visiblity樣式為hidden來實現隱藏。Dynamic:沒有錯誤信息的時候用display樣式為none來實現隱藏。還有一個為None。

 

都會在客戶端和服務器端同時校驗。

可以通過設置ValidationGroup來為其分組,有時候一個頁面有兩個表單,為使其互不干擾,就可以為其分組。類似于radiobutton。

 

如果將按鈕控件的CausesValidation屬性設為false,則這個按鈕的點擊不觸發(fā)校驗。

 

范圍驗證控件:RangeValidator。有Date,String,Double,int,等多種類型的數據可以選用,范圍可以編程動態(tài)的設定。

 

正則表達式驗證:可以自定義驗證表達式:比如QQ號(5-11位的數字)\d{5,11}

個人說明10到50字之間 \w{10,50}

 

每個驗證控件都有ErrorMessage、Text兩個屬性,ErrorMessage是用來顯示到ValidationSummary控件中的值,Text是用來顯示到驗證控件上面的值,如果Text為空,則ErrorMessage會同時顯示到匯總控件和驗證控件上面。

 

 

母版頁

母版頁中,對圖片的引用,可以會出現路徑問題,需要用服務器端圖片控件。

并將其路徑設為相對路徑,相對應用的路徑。例如:ImageUrl=”~/images/banner.jpg” ;

也可以用ruant=server的HTML控件 src=”~/images/banner.jpg” ;

 

 

如果不希望用服務端控件占用過多資源,也可以通過ResolveClientUrl(”~/images/banner.jpg” )方法結合“html頁面使用C#后臺代碼的方式:

<%= ResolveClientUrl(”~/images/banner.jpg” )%>動態(tài)轉換路徑。

 

<%@ Page Title="首頁" Language="C#" MasterPageFile="~/母版/MyMaster1.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="注冊練習.WebForm1" %>

使用了母版的具體頁面,需要改標題:只需更改最上邊的 Page Title= “xx”.就ok了。

母版頁中的服務器端控件必須放到runat=Server的form中。

 

如需在具體頁面中操作母版頁中的服務端控件,用到如下方法:

Button b = (Button)this.Master.FindControl("btnMaster");

b.Visible=false;

 

數據綁定控件簡介

從數據綁定開始用WebApplication,否則會有很多麻煩。

數據綁定分為數據源和數據綁定控件兩部分、數據綁定控件通過數據源來獲得數據,通過數據源來隔離數據提供者和數據使用者,數據綁定控件通過數據源來對數據進行修改。

數據源有SqlDataSource、AccessDataSource、ObjectDataSource、LinqDataSource、EntityDataSource、XmlDataSource等,由于大部分項目都不會頁面直接連接數據庫(因為違反了最基本的分層原則),所以SqlDataSource,AccessDataSource都不會使用,LinqDataSource、EntityDataSource也是只有在很極端的采用Linq,EF的項目中才會用到。

XmlDataSource是處理xml數據時才可能會用。ObjectDataSource是web開發(fā)中應用最廣的數據源,也能很容易的進行數據庫切換。

 

數據綁定控件有列表數據綁定控件(DropDownList、 RadioButtonList、ListBox、CheckBoxList、BulletedList等)和復雜控件(DataGrid(2.0之后就沒用了),GridView、DetailsView、FormView、ListView、Repeater、DataList)GridView等都是ListView子集。

Repeater是最輕量級的組件。在互聯網的前臺用的最多,ListView是ASP.Net3.5中新增的控件,ListView是GridView、DetailsView、FormView、Repeater、DataList等控件的大一統,那些控件的優(yōu)點ListView全都有,會了ListView,其他控件就會用了,因此數據綁定控件主要講列表數據綁定控件、Repeater和ListView,項目中會用到FormView、GridView。

 

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
?aspx與ascx,ashx的用法總結
巧用asp.net 過濾所有的Response請求并替換部分內容,徹底解決MVC虛擬路徑問題.
使用.ashx文件處理IHttpHandler實現發(fā)送文本及二進制數據的方法
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服