簡介:
Ajax.NET是一款免費的面向.Net的Ajax Library
Atlas是微軟提供給開發者的Ajax開發包
兩者都可以讓ASP.Net具備Ajax功能
近日,利用空閑時間把這兩個東西做了不完全的比較
1、代碼量
由于兩者通過不同途徑實作Ajax,是以代碼的量也是不相同的,下面我用VB.Net為例寫了段讀寫Session的例子。
[Ajax.NET]
前台:
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" /><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID="Button2" runat="server" Text="Button" />
</form>
背景:
<Ajax.AjaxMethod(HttpSessionStateRequirement.ReadWrite)> Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Session("Uesr") = TextBox1.Text
End Sub
<Ajax.AjaxMethod(HttpSessionStateRequirement.Read)> Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox2.Text = Session("Uesr").ToString
[Atlas]
<atlas:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="True" />
<atlas:UpdatePanel ID="UpdatePanel" runat="server">
<ContentTemplate>
</ContentTemplate>
</atlas:UpdatePanel>
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
由上面的代碼可以看出Ajax.NET是通過在背景方法聲明前加上<Ajax.AjaxMethod>把目前方法變成Ajax方法,而Atlas是通過前台把需要用到Ajax的表單加上<atlas:UpdatePanel>标簽來完成的。
2、相容性
Ajax.NET可以在任何.Net版本下運作,要用時需把相關的DLL附加引用
Atlas更偏向于.Net 2.0,甚至提供了Visual Studio 2005模闆的安裝
3、效率