آموزش Ajax بخش هفتم
مقایسه ی معماری Asp.net AJAX Extensions و Asp.net 2
1- کنترلهای server
2- اتصال کننده ی سرویسهای کاربردی
3- ارتباطات ناهمزمان
معماری Asp.net 2 :
1- Page Framework و کنترلهای سرور 2- سرویسهای کاربردی
Server Controls :
کنترلهای سرور را به دو دسته تقسیم می شوند:
1- Script Managent : که شامل کنترلهای ScriptManagerو ScriptManagerProxy می شود.
2- Partial-Page Rendering(تفسیر قسمتی از صفحه) :که شامل کنترلهای UpdatePanel و UpdateProgressوTimer می شود.
حال به توضیح کامل هر کدام از این کنترلها می پردازیم:
1- ScriptManager :
2- فایلهای JavaScript رادر Client دانلود می کند.
3- مارا قادر می سازد تا برای تعبیر و به روز رسانی قسمتی از صفحه از کنترل UpdatePanel استفاده کنیم.
4- دسترسی به سرویس های وب را از طریق پروکسی های سمت Client فراهم می سازد.
5- مدیریت زمان انجام Callback وهچنین مدیریت خطاها را بر عهده دارد.
6- متدهای ثبتی برای Scripts فراهم می کند.
7- حیطه وموضع Asp.net Ajax را پشتیبانی وحمایت می کند.
نکته: هر صفحه فقط وفقط یک نمونه از ScriptManager نیاز دارد.
شمای ScriptManager:
<asp:ScriptManager ID="ScriptManager1" Runat="server"
EnablePartialRendering="true|false"
EnablePageMethods="true|false"
AsyncPostBackTimeout="seconds"
AsyncPostBackErrorMessage="message"
AllowCustomErrorsRedirect="true|false"
OnAsyncPostBackError="handler"
EnableScriptGlobalization="true|false"
EnableScriptLocalization="true|false"
ScriptMode="Auto|Inherit|Debug|Release"
ScriptPath="path">
<Scripts>
<!-- Declare script references here -->
</Scripts>
<Services>
<!-- Declare Web service references here -->
</Services>
</asp:ScriptManager>
Service References - 1 :
<asp:ScriptManager ID="ScriptManager1" Runat="server">
<Services>
<asp:ServiceReference Path="ZipCodeService.asmx" />
</Services>
</asp:ScriptManager>
2- ScriptManagerProxy :
"Proxy" برای کنترلهای ScriptManager در master pages اعلان می شود.همچنین اجازه می دهد content pages (صفحات content) اسکریپت و مرجع های سرویس را بشناسند ودر آنها ظاهر شوند.
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" Runat="server">
<Scripts>
<!-- Declare additional script references here -->
</Scripts>
<Services>
<!-- Declare additional service references here -->
</Services>
</asp:ScriptManagerProxy>
3 _ Update Panel :
1- از Trigger های تعریف شده پشتیبانی می کند: به طور پیش فرض ، postback تمام کنترلها در یک UpdateControl به callback های غیر همگام تبدیل می شوند.trigger ها حیطه ودامنه ی postback->callback را منقبض یا منبسط می کنند.
2- در تمام حالات به درستی کار می کند.
شمای UpdatePanel:
<asp:ScriptManager ID="ScriptManager1" Runat="server"
EnablePartialRendering="true" /> …
<asp:UpdatePanel ID="UpdatePanel1" Runat="server"
UpdateMode="Always|Conditional"
ChildrenAsTriggers="true|false">
<Triggers>
<!-- Define triggers (if any) here -->
</Triggers>
<ContentTemplate>
<!-- Define content here -->
</ContentTemplate>
</asp:UpdatePanel>