مشخصات مقاله
-
1545
-
0.0
-
5240
-
0
-
0
آموزش Directives در ASP.NET
آموزش directive ها در ASP.NET
Directive ها در حقیقت دستور العمل هایی هستند که با بهره گیری از آن ها می توان تنظیمات اختیاری و دلخواه خود را اعمال کرد، به عنوان مثال یک کنترل سفارشی ثبت (register) کرد و یا زبان صفحه را بدلخواه تنظیم کرد و غیره .. . این تنظیمات نحوه ی پردازش فرم های وب (.aspx) و صفحات user control (ascx.)را توسط .NET Framework تعیین می کنند.
دستور نگارش (سینتکس) تعریف یک directive به صورت زیر می باشد:
< %@ directive_name attribute=value [attribute=value] % >
در این مبحث تنها به شرح directive ها پرداخته و تعداد زیادی از آن ها را به صورت کاربردی به شما آموزش می دهیم.
Application Directive
Application directive ها خصیصه های (attribute) مختص برنامه را تعریف می کنند. این directive در قسمت فوقانی (بالای صفحه) فایل global.aspx جای می گیرد.
دستور نگارش Application directive به شرح زیر می باشد:
< %@ Application Language="C#" % >
خصیصه های Application directive در جدول زیر با ذکر شرح برای شما فهرست شده:
یک کلاس code-behind تعریف می کند که page از آن به ارث می برد.
Assembly Directive
Directive نام برده یک assembly را به صفحه و برنامه ی کاربردی مورد نظر در زمان parse لینک (متصل) می کند. این directive ممکن است یا در فایل global.asax و یا در فایل page ظاهر شود)به عبارتی دیگر یک assembly توسط این directive حین کامپایل به فایل application ASP.NET لینک می شود و از این طریق تمامی کلاس های assembly و interface های آن را برای استفاده آماده می کند (از جمله آن یک صفحه ی وب، user control، master page، یا فایل global.asax می باشد).
دستور نگارش یک assembly directive به ترتیب زیر می باشد:
< %@ Assembly Name ="myassembly" % >
خصیصه های assembly directive در جدول زیر با ذکر شرح آن ها برای شما فهرست شده:
Control Directive
خصیصه های ویژه ی user control ها (فایل های .ascx) را تعریف می کند که توسط تجزیه گر (parser) و مترجم (compiler) ASP.NET بکار گرفته می شود. directive ذکر شده تنها با user control ها بکار گرفته شده و در فایل های user control که دارای پسوند .ascx هستند ظاهر می شود.
دستور نگارش Control directive:
< %@ Control Language="C#" EnableViewState="false" % >
خصیصه های control directive به شرح زیر می باشند:
این خصیصه یک کلاس code-behind تعریف می کند که کنترل مورد نظر از آن به ارث می برد.
Implements Directive
directive مزبور نشانگر این است که صفحه ی وب، صفحه ی الگو (master page) و یا صفحه ی user control باید رابط (interface) .NET Framework را پیاده سازی (implement) کنند.
دستور نگارش Implements directive:
< %@ Implements Interface="interface_name" % >
Import Directive
این directive به صورت صریح یک فضای نام (namespace) را داخل فایل اپلیکیشن ASP.NET وارد (Import) کرده و از این طریق تمامی کلاس ها و رابط های (interface) فضای نام مذکور (namespace وارد شده) را در اختیار فایل مورد نظر قرار می دهد. چنانچه فضای نام در فایل global.asax مشخص شده باشد، در آن صورت فضای نام به کل برنامه ی کاربردی اعمال می شود. اگر فضای نام در یک صفحه از user control page قرار داده شود، در آن صورت فضای نام تنها به آن صفحه یا کنترل اعمال می گردد.
دستور نگارش import directive:
< %@ namespace="System.Drawing" % >
Master Directive
Master directive در واقع یک صفحه را به عنوان صفحه ی الگو یا master page تعریف می کند، یا به عبارتی دیگر خصیصه هایی ویژه ی master page تعریف می کند که توسط تجزیه گر و کامپایلر ASP.NET مورد استفاده قرار می گیرد.
< %@ MasterPage Language="C#" AutoEventWireup="true" CodeFile="SiteMater.master.cs" Inherits="SiteMaster" % >
MasterType Directive
این directive با تخصیص class name به خاصیت Master(Master property) یک صفحه آن را strongly-typed (وابسته ی زیاد به نوع) می کند) با استفاده از directive فوق می توان یک ارجاع strongly-typed به master page هنگامی که صفحه ی نام برده از طریق master property مورد دستیابی قرار گرفت، ایجاد کرد).
دستور نگارش:
< %@ MasterType attribute="value"[attribute="value" ...] % >
OutputCache Directive
OutputCache Directiveسیاست های ذخیره سازی خرورجی در حافظه ی پنهان (output caching policies) یک صفحه یا user control را مدیریت و کنترل می کند.
دستور نگارش:
< %@ OutputCache Duration="15" VaryByParam="None" % >
Page Directive
Directive ذکر شده خصیصه هایی ویژه ی page file (که دارای پسوند .aspxهستند) تعریف می کند که این خصیصه ها توسط تجزیه گر و کامپایلر ASP.NET بکار گرفته می شوند.
سینتکس:
< %@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Trace="true" % >
خصیصه های page directive به شرح زیر می باشند:
رشته ای تعیین می کند که نشانگر اسم کلاس page می باشد. این رشته به هنگام درخواست (request) شدن صفحه به صورت پویا ترجمه می شود.
PreviousPageType Directive
PreviousPageType یک directive می باشد که با تخصیص یک کلاس به صفحه، آن را strongly-typed می کند.
دستور نگارش directive فوق به ترتیب زیر می باشد:
<%@ PreviousPageType attribute="value"[attribute="value" ...] %>
Reference Directive
این directive مشخص می کند که یک صفحه یا user control دیگر باید کامپایل شده و به صفحه ی جاری لینک شود.
دستور نگارش:
< %@ Reference Page ="somepage.aspx" % >
Register Directive
به منظور ثبت (register) کردن کنترل های سمت سرور و user control های سفارشی بکار می رود (یک ارتباط یا اتصال بین پیشوند tag و کنترل سفارشی ایجاد می کند. از این طریق برنامه نویس قادر خواهد بود به کنترل های سفارشی در اپلیکیشن ASP.NET ارجاع کند.
دستور نگارش register directive:
< %@ Register Src="~/footer.ascx" TagName="footer" TagPrefix="Tfooter" % >