ASP.NET یک چارچوب کاربردي Web است که توسط
شرکت مايکروسافت عرضه گردیده تا برنامه نويسان بتوانند برای ساخت سايت هاي Web و برنامه هاي Web پویا و سرويس هاي Web پویا و سرويس هاي Web XML از آن استفاده کنند. این بخشی اززيرساخت .NET مایکروسافت و جانشینی برای تکنولوژی صفحات سرويس دهنده فعال (ASP) است. ASP مبتنی بر زبان هاي مشترک در حال اجرا است که به برنامه نویسان اجازه میدهد کدهای ASP را با استفاده از هر زبان Framework.NET بنویسند.
قالب پرونده ASPX
ASPX یک پرونده با قالب متنی است که برای ساخت صفحات Web از آن استفاده میشود، و استاندارد پروندههای XML را رعایت میکند. پرونده ASPX معمولاً شامل نشانه گزاریهای
HTML و همچنین نشانه گزاریهای کنترل هاي استاندارد وب و کنترل هاي تعريف شده در معماري ASP.NET است، که توسعه دهنده ها(برنامه نویسان وب) همه محتویات پویا وایستای مورد نیاز را برای ایجاد صفحات Web پویا در آن قرار میدهند. علاوه برآن، کدهای پویایی که درسرویس دهندها جرا میشوند، میتوانند درمحلی دریک صفحه درون یک قطعه قرار بگیرند --٪>کدهاي پويا<٪- که مانند دیگرتکنولوژیهای توسعه یافته مانند JSP،
PHP و ASP است اما این شیوه معمولاً توسط
مایکروسافت رد میشود مگر به منظورالحاق داده، زیرا زمانیکه صفحه ترجمه میگردد درخواستهای بیشتری وجود دارد.
روشی که توسط
مایکروسافت برای رفتار با کد برنامه پویا پیشنهاد میشود، مدل پشتيباني کد است که این کد را دریک پرونده جداگانه یا ضمیمه متنی به طور ویژه طراحی شده قرارمی دهد. پروندههای پشتیبان کد معمولاً چیزهایی را به مفهوم
MyPage.aspx.cs یا
MyPage.aspx.vb برپایه نام پرونده ASPX نام مینهد. زمانیکه ازاین روش برنامه نویسی استفاده میکنید، توسعه دهنده کدها را برای پاسخ دادن به رویدادهای مختلف مانند صفحهای که بارگذاری میشود، یا کنترلی که برروی آن کلیک میشود به جای رویهای که درطول برنامه حرکت میکند، مینویسد.
روش فني ترجمه
ASP از یک روش نمایش مرکب ترجمهای استفاده میکند. درطول تألیف الگوی(.aspx) پرونده درون قالب کد تدوین میشود که یک درخت کنترل (مرکب) ساخته خواهد شد که قالب (ایستا)اصلی را نشان میدهد. متن اصلی درون نمونههایی از
کلاس کنترل اصلی میرود. کنترلهای سرویس دهنده توسط نمونههایی ازیک
کلاس کنترل ویژه نشان داده میشوند. کد آغازین با کد نوشتاری کاربر(معمولاً توسط مجمعی از
کلاس هاي جزئی چندگانه) و نتایج دریک ویژگی
کلاس برای صفحه ترکیب شدهاست. صفحه مانند ریشه درخت کنترل مضاعف میشود.
درخواستهای واقعی برای یک صفحه در میان مرحلهای ازمراحل پردازش میشود. ابتدا، درطول مراحل بارگزاری نمونهای از
کلاس صفحه ساخته میشود وکد بارگزاری اجرا میگردد. این حاصل درخت کنترل اصلی است که درحال حاضرمعمولاً توسط روشهایی ازمراحل پیگیری در صفحه اداره میشود. همانند هرگره دردرخت، یک کنترل نشان داده شدهاست، مانند نمونهای از یک
کلاس که میتواند ساختار درخت را به خوبی با دستکاری خصوصیات/روشهای گرههای منحصربه فرد تغییرمی دهد. نهایتاً درطول مرحله ترجمه یک دیدارگر برای دیدن هر گره درخت استفاده شدهاست. هر گره برای ترجمه خود با استفاده از روشهایی ازناظردرخواست میکند. کد
HTML منتج برای سرویس گیرنده (Client) فرستاده میشود.
پس ازپردازش درخواست نمونهٔ
کلاس صفحه دورانداخته میشود وبا آن درخت کنترل تکمیل میشود.
کارايي
اهداف ASP ایجاد کارایی بر روی سایر فناوریهای مبتنی بر متن (شامل ASP قدیمی) توسط تالیف کد سمت سرویس دهنده به یک یا بیشتر، از پرونده هاي DLL روی سرويس دهنده وب است. این تآلیف به صورت خودکار اولین باری که یک صفحه درخواست میشود اتفاق میافتد. (که سبب میشود توسعه دهنده احتیاجی به انجام یک مرحله تألیف جداگانه برای صفحات نداشته باشد.) این ویژگی، سهولت توسعه ارائه توسط زبانهای متنی را با نشان دادن کارایی برای تألیف دودویی فراهم میکند. به هرحال، تألیف میتواند سبب یک تأخیرقابل ملاحظه برای کاربر WEB زمانیکه صفحه جدیداً ویرایش «نشر» شده را برای اولین باردرخواست میشود، شود.
ASPX وسایرپروندههای منبع دریک میزبان مجازی برروی یکی از سرويس هاي اطلاعاتي اينترنت جای دارد (یا سایر سرویس دهندههای سازگار) اولین باری که یک سرویس گیرنده صفحهای را درخواست میکند، چارچوب کاری.NET پرونده(ها) را درون یک انجمن.NET تجزیه وتألیف کرده و پاسخ را ارسال میکند. درخواستهای بعدی توسط پروندههای DLL انجام میشوند. به صورت پیش فرض به محض اولین درخواست ASP.NET سایت را بدون ایراد دردستهای متشکل از۱۰۰۰ پرونده تألیف خواهدکرد. اگر به دلیل بروز مشکلی تالیف به طول انجامد، که در این حالت اندازه دسته یا راهبرد تالیف پیچیده بوده.