ASP.NET常用資料繫結控制項優劣總結

來源:互聯網
上載者:User

標籤:

    本文的初衷在於對Asp.net常用資料繫結控制項進行一個概覽性的總結,主要分析各種資料繫結控制項各自的優缺點,以便在實際的開發中選用合適的控制項進行資料繫結,以提高開發效率。

      因為這些資料繫結控制項大部分都已經封裝的很好了,稍微有一些基礎的朋友都可以很容易的上手使用,所以本文不涉及具體控制項的使用,只在於分析各自的優劣點,但是在下一篇文章裡,我會主要講一下ListBox、GridView、Repeater這三個資料繫結控制項的“高效分頁”,ListBox和GridView內建的有分頁,但是其效率太低了,少量的資料還可以,大量的資料根本就沒法用,Repeater控制項本身不提供分頁,但是在實際的開發中可能也會有用到分頁,所以也會給大家講一下,Repeater的分頁。

     好了,現在開始進入正題,先從比較常用的控制項說起。

     一、GridView控制項

         主要特點:支援刪、改,排序、分頁、外觀設定、自訂顯示資料

         缺    點:影響程式效能、不支援插入操作   

         這個控制項可以以表格形式(table標籤)顯示、編輯和刪除多種不同的資料來源(例如資料庫、XML檔案以及集合等)中的資料。GridView控制項功能非常強大,如果需要,編程者可以不用編寫任何代碼,通過VS 2008拖拽,並從屬性面板設定屬性即可,還可以完成如分頁、排序、外觀設定等功能。雖然功能非常齊全,但程式效能將受到影響,在頁面中最好不要過多地使用該控制項。當然,如果需要自訂格式顯示各種資料,GridView控制項也提供了用於編輯格式的模板功能,但是不支援資料的插入。

 圖示:

 

 

     二、ListView控制項

         主要特點:提供了增、刪、改、排序、分頁等功能,還可以支援使用者自訂模板

         缺    點:影響程式效能、大資料分頁效率低

         ListView控制項會按照編程者編寫的模板格式顯示資料。與DataList和Repeater控制項相似,ListView控制項也適用於任何具有重複結構的資料。不過,ListView控制項提供了使用者編輯、插入和刪除資料等資料操作功能,還提供了對資料進行排序和分頁的功能,只需要在VS 2008中直接設定即可,不需要編寫代碼,這點非常類似於GridView控制項。可以說,ListView既有Repeater控制項的開放式模板,又具有GridView控制項的編輯特性。ListView控制項是ASP.NET 3.5新增的控制項,其分頁功能需要配合DataPager控制項實現。ListView控制項是ASP.NET 3.5新增的控制項,其分頁功能需要配合DataPager控制項實現。但是對於大量資料來說其分頁的效率是很低下的,所以在下一節,我會帶領大家做一個高效的分頁。總的來說,ListView是目前為止功能最齊全、最好用的資料繫結控制項。

 

 

 

     三、Repeater控制項

         主要優點:該控制項是一個完全的開發性控制項,可以自如的顯示使用者自訂的顯示方式

         缺    點:不支援分頁、排序、編輯,僅提供重複模板內容

         Repeater 控制項是一個資料繫結容器控制項,用於產生各個子項的列表,這些子項的顯示方式可以完全由編程者自己編寫。當控制項所在頁面運行時,該控制項根據資料來源中資料行的數量重複模板中所定義的資料顯示格式,編程者可以完全把握資料的顯示布局,如使用div元素、ul元素等。但是美中不足的是該控制項不支援像排序、分頁、編輯之類的功能,僅僅支援重複模板內容功能,但是在實際的開發中可能會有用到分頁之類的功能,所以在下一節,我著重也會講一下Repeater的分頁。

     四、DataList控制項

     主要優點:可以自訂格式顯示資料、比較靈活

     缺    點:不支援分頁、編輯插入

     該控制項可以以自訂的格式顯示各種資料來源的欄位,其顯示資料的格式在建立的模板中定義,可以為項、交替項、選定項和編輯項建立模板。DataList控制項也可以使用標題、腳註和分隔字元模板自訂整體外觀,還可以一行顯示多個資料行。雖然DataList控制項擁有很大的靈活性,但其本身不支援資料分頁,編程者需要通過自己編寫方法完成分頁的功能。僅用於資料的顯示,不支援編輯、插入、刪除。

 

       五、DetailsView控制項

          主要優點:以表格形式顯示單條資料、支援排序、插入、刪除、修改、分頁

          缺    點:不支援排序

          DetailsView控制項以表格形式(table標籤)一次僅顯示資料來源的單條記錄,並且table標籤下的每行(tr標籤)表示記錄中的一個欄位。這個控制項同樣支援資料的編輯、插入和刪除操作,並可以輕鬆地設定分頁功能,但是DetailsView控制項本身不支援資料排序。

 

         

         六、FormView控制項

             主要優點:顯示單條資料、分頁、增、刪、改,可自訂模板顯示

             缺    點:不支援排序

             從功能上看FormView控制項與DetailsView控制項很相似,,FormView控制項僅可顯示資料來源中的單條記錄。和DetailsView控制項不同,DetailsView控制項採用表格版面配置(table標籤),記錄的每個欄位都各自顯示為一行。而FormView控制項沒有用於顯示記錄的預置布局,編程者需要自己建立子項目範本,編寫各種用於顯示記錄中的欄位的控制項以及布局用的其他HTML標籤。和DetailsView控制項一樣,FormView控制項可以輕鬆地啟用分頁功能。如果僅僅顯示單條記錄,FormView控制項是比較推薦的方法,因為可以在高效開發的同時自訂資料顯示的格式。

        七、DropDownList控制項

            主要優點:多用於多級聯動

            缺    點:盡可顯示一個欄位

            DropDownList控制項一般多用於多級聯動,比如省市的聯動等,這裡主要講一下關鍵點,就是要為DropDownList設定要顯示的欄位和值顯示欄位即:

 

綁定後結果如下:

 

        到這裡已經把Asp.net常用的資料繫結控制項的各自的優劣講析了一下,我們只有深刻的理解各個控制項的特點,才可以更好的在合適的情況下,採用合適的控制項,更好的促進程式開發。當然,可能在實際的開發過程中,我們都不會用到這些控制項,經過微軟的封裝之後產生太多的額外資訊,增加了伺服器的壓力。但是,還是把這些東西總結了出來,希望可以對大家有所協助。也希望大家多多指點!

ASP.NET常用資料繫結控制項優劣總結

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.