1. Web服務器控件和Windows控件的執(zhí)行有何不同?
【解答】一般來說,大部分Web服務器控件和Windows控件的功能和使用都很相似,但是二者在內(nèi)部實現(xiàn)上卻有著本質(zhì)的區(qū)別。Windows控件的屬性、方法、事件等都是在本機上執(zhí)行的,而Web服務器控件則全部是在服務器端執(zhí)行的。
2. 利用HiddenField控件是否可用來存儲保密數(shù)據(jù)?為什么?
【解答】HiddenField控件,即隱藏輸入框的服務器控件,可以用于存儲非顯示的值。在Web應用程序中,可以使用HiddenField控件來存儲Web窗體頁的狀態(tài)值。但是,在Web應用程序運行期間,查看源代碼會發(fā)現(xiàn)該控件是以的形式呈現(xiàn)給客戶端瀏覽器的,其隱藏值value是用戶可見的,所以它不適用于存儲需要保密數(shù)據(jù)。
3. SqlDataSource組件的作用是什么?
【解答】SqlDataSource組件是一種數(shù)據(jù)源控件,它可以連接到任何ADO.NET支持的數(shù)據(jù)源(如SQL Server、Oracle等),從中檢索數(shù)據(jù),并使得其他控件(如GridView等控件)可以綁定到數(shù)據(jù)源。使用SqlDataSource組件訪問數(shù)據(jù),只需要提供用于連接到數(shù)據(jù)庫的連接字符串,并定義訪問數(shù)據(jù)的SQL語句或存儲過程。在運行時,SqlDataSource組件會自動打開與數(shù)據(jù)庫的連接,執(zhí)行SQL語句或存儲過程,完成數(shù)據(jù)訪問后自動關(guān)閉連接。
4. 采用GridView控件、DataList控件、DetailsView控件來顯示數(shù)據(jù)各有何特點?
【解答】GridView控件、DataList控件、DetailsView控件都可以利用SqlDataSource控件綁定SQL數(shù)據(jù)源自動顯示數(shù)據(jù)。就顯示數(shù)據(jù)的能力來說,GridView控件、DataList控件一次可以顯示數(shù)據(jù)表中的多條記錄,而DetailsView控件每次只能顯示數(shù)據(jù)表中的一條記錄;就操作數(shù)據(jù)的能力來說,GridView控件、DetailsView控件都可以自動利用SqlDataSource控件的數(shù)據(jù)操作命令來編輯所顯示的數(shù)據(jù),而DataList控件則需要編寫自身的相應事件才可以完成編輯數(shù)據(jù)的操作。
5. 使用站點地圖進行導航時,SiteMapPath控件與Menu控件有何不同?
【解答】利用站點地圖Web.sitemap進行網(wǎng)站導航時,SiteMapPath控件僅能顯示用于在站點地圖中列出的頁面中顯示導航路徑,而Menu控件即使使用在站點地圖中沒有列出的頁面中,也可以生成菜單,顯示所有的導航數(shù)據(jù)。