注意.NET中容易混淆的幾組重要概念_.Net教程
推薦:如何在ASP.Net中實現(xiàn)RSA加密在我們實際運用中,加密是保證數(shù)據(jù)安全的重要手段。以前使用ASP時,對數(shù)據(jù)加密可以使用MD5和SHA1算法,這兩種算法雖然快捷有效,但是無法對通過它們加密的密文進行反運算,即是解密。因此需要解密數(shù)據(jù)的場合,這兩種方法就不太適合了。當然你也可以自己編寫
許多朋友在學習和開發(fā).NET程序的過程中經(jīng)常發(fā)現(xiàn)一些誤用.NET概念的情況。本文將對AJAX、LINQ、Lambda等相關的概念進行梳理,希望在明確這些概念之后,大家能夠把注意力集中在對于具體問題的分析解決上,而不要讓溝通成為瓶頸。
在這篇文章中,希望澄清三組概念,它們是:
| 以下為引用的內(nèi)容: ◆AJAX / AJAX框架 / AJAX.NET (Professional) / ASP.NET AJAX ◆LINQ / LINQ to SQL / LINQ to XXX ◆Lambda Expression / Expression Tree / 匿名方法 |
AJAX / AJAX框架 / AJAX.NET (Professional) / ASP.NET AJAX
這是我見過的混淆最多的一組概念。不過當去年AJAX技術如火如荼,AJAX框架層出不窮,而微軟又推出ASP.NET AJAX框架之后,這四個概念之間的混淆也愈發(fā)嚴重起來了。我經(jīng)常能看到這樣的問題:
◆我在用AJAX技術時不知道怎么在UpdatePanel里……
◆我用AJAX.NET框架調(diào)用Web Service時……
這是非常典型的概念混淆,上面兩句話的AJAX與AJAX.NET都應該使用ASP.NET AJAX替換。關于這幾個概念的區(qū)別我《深入淺出ASP.NET AJAX》系列WebCast多次進行解釋,不過收效似乎并不明顯。于是我打算在這里再進行一下說明:
AJAX是Asynchronous JavaScript and XML縮寫。這個概念代表的是一種技術,當您在說“我在項目中使用了AJAX技術時”,只是代表了您使用客戶端XMLHttpRequest對象與服務器端進行異步通信。不過因為隨著AJAX技術的運用往往會帶來豐富的客戶端效果,因此對AJAX技術的廣義理解也可以認為這是一種操作客戶端DOM而帶來豐富效果的技術(這個“廣義”的描述其實并不準確,大家明白老趙的意思就可以了)。
AJAX框架是一套輔助開發(fā)人員使用AJAX技術的代碼包(庫,etc.)。一個AJAX框架的目的一般是對XMLHttpRequest對象的使用進行封裝,并提供一些操作DOM元素或者實現(xiàn)特殊效果的“捷徑”。成熟的AJAX框架有很多,它們可以被分為“以客戶端為中心”和“面向特定服務器技術”兩大類。前者的優(yōu)秀代表有(排名不分先后):Prototype、jQuery、Mootools、YUI、Dojo等等(最后兩個其實更接近一套客戶端界面庫,也就是“廣義”的AJAX框架);而后者的典型代表既是AJAX.NET和ASP.NET AJAX了——當然,也有優(yōu)秀的AJAX框架面向其他服務器技術,在此不提。
AJAX.NET (Professional)是ASP.NET平臺上著名的AJAX框架,誕生于2005年2月(雖然正式命名為AJAX.NET則是在兩個月之后),作者為Michael Schwarz。同年10月,Michael為AJAX.NET提供了更豐富的功能(主要是安全性方面),并將其改名為AJAX.NET Professional。AJAX.NET提供的最主要的(也是唯一)的功能就是異步調(diào)用服務器端方法,可謂非常純粹的“基于數(shù)據(jù)”的AJAX使用方式。這個框架是一個個人作品,有支持.NET 1.1和2.0的版本,它并不屬于微軟官方,目前已經(jīng)停止更新。
ASP.NET AJAX的Code Name為“Atlas”,在CTP向Beta版轉(zhuǎn)移時曾經(jīng)發(fā)生過翻天覆地的變化。ASP.NET AJAX中包含了UpdatePanel等控件,可以非常透明地為現(xiàn)有的ASP.NET WebForms應用程序添加AJAX效果。此外還提供了客戶端異步調(diào)用Web Services的方法,使開發(fā)人員也能夠使用面向數(shù)據(jù)的方式使用AJAX技術。值得一提的是ASP.NET AJAX的“附屬品”相當豐富。例如ASP.NET AJAX名為“Microsoft AJAX Library”的客戶端部分是一個純客戶端AJAX框架,提供了面向?qū)ο箢愋拖到y(tǒng)、瀏覽器兼容層、異步通信層等多種基礎組件;ASP.NET AJAX的開源擴展包“AJAX Control Toolkit”包含了數(shù)十個可以直接使用的AJAX服務器端控件,這樣開發(fā)人員能夠輕松地添加豐富的客戶端效果。同時,官方還為ASP.NET AJAX提供了“非正式”地擴展包,其中的History等優(yōu)秀控件也將加入未來版本的ASP.NET AJAX框架中。ASP.NET AJAX是官方出品的AJAX框架,目前已經(jīng)被集成到ASP.NET 3.5中去了,因此其版本號也從ASP.NET AJAX 1.0一下子“躍升為”ASP.NET AJAX 3.5。如果您看到了這些版本號也請不要疑惑,其實ASP.NET AJAX 3.5相對于ASP.NET AJAX 1.0來說只是修補了一些細小bug,幾乎沒有任何變化。
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- ASP.NET MVC :實現(xiàn)我們自己的視圖引擎
- .NET圖像界面按鈕的clicked事件淺談
- ASP.NET中如何對頁面輸出緩存
- 解析運行asp.net服務器權限設置的6個問題
- 解讀ASP.NET中的IFRAME框架掛馬
- 學習Asp.Net經(jīng)常會用到的函數(shù)集
- 對.NET Framework 反射的反思
- ASP.NET web.config中數(shù)據(jù)庫連接字符串connectionStrings節(jié)的配置方法
- 水晶易表調(diào)用C#的WebService,返回數(shù)據(jù)集合的應用分析
- 談談HtmlControl與WebControl的區(qū)別與用途
- 相關鏈接:
- 教程說明:
.Net教程-注意.NET中容易混淆的幾組重要概念
。