ای‌اس‌پی‌دات‌نت

ای‌اس‌پی‌دات‌نت یک چارچوب کاربردی Web است که توسط شرکت مایکروسافت عرضه گردیده تا برنامه نویسان بتوانند برای ساخت سایت‌های Web و برنامه‌های Web پویا وسرویس‌های Web پویا وسرویس‌های Web XML از آن استفاده کنند. این بخشی از زیر ساخت.NET مایکروسافت و جانشینی برای تکنولوژی صفحات سرویس دهنده فعال (ASP) است. ASP مبتنی بر زبانهای مشترک در حال اجرا است که به برنامه نویسان اجازه می‌دهد کدهای ASP را با استفاده از هر زبان Framework.NET بنویسند.
مشخصات
قالب پرونده ASPX
ASPX یک پرونده با قالب متنی است که برای ساخت صفحات وب (ابهام‌زدایی) از آن استفاده می‌شود، و استاندارد پرونده‌های XML را رعایت می‌کند. پرونده ASPX معمولا شامل نشانه گزاریهای HTML یا اکس‌اچ‌تی‌ام‌ال همچنین نشانه گزاریهای کنترل‌های استاندارد Web و کنترل‌های تعریف شده در معماری ASP.NET است، که توسعه دهنده‌ها(برنامه نویسان وب) همه محتویات پویا وایستای مورد نیاز را برای ایجاد صفحات Web پویا در آن قرار می‌دهند. علاوه برآن، کدهای پویایی که درسرویس دهندها اجرا می‌شوند، می‌توانند درمحلی دریک صفحه درون یک قطعه قرار بگیرند --٪> کدهای پویا <٪- که مانند دیگرتکنولوژی‌های توسعه یافته مانند PHP, JSP و ASP است اما این شیوه معمولا توسط مایکروسافت رد می‌شود مگر به منظور الحاق داده، زیرا زمانی‌که صفحه ترجمه می‌گردد درخواست‌های بیشتری وجود دارد.
روشی که توسط مایکروسافت برای رفتاربا کد برنامه پویا پیشنهاد می‌شود، مدل پشتیبانی کد است که این کد را دریک پرونده جداگانه یا ضمیمه متنی به‌طور ویژه طراحی شده قرارمی‌دهد. پرونده‌های پشتیبان کد معمولا چیزهایی را به مفهوم MyPage.aspx.cs یا MyPage.aspx.vb برپایه نام پرونده ASPX نام می‌نهد. (این عمل درمایکروسافت ویژوال استادیو و سایر محیط‌های توسعه یکپارچه به صورت خودکارانجام می‌شود.) زمانی‌که ازاین روش برنامه‌نویسی استفاده می‌کنید، توسعه دهنده کدها را برای پاسخ دادن به رویدادهای مختلف مانند صفحه‌ای که بارگذاری می‌شود، یا کنترلی که بر روی آن کلیک می‌شود به جای رویه‌ای که درطول برنامه حرکت می‌کند، می‌نویسد.
مقایسه سرعت ASP.NET با زبان PHP
همان طور که می‌دانید زبان برنامه‌نویسی ASP.NET Web Form و ASP.NET Core ، چون هنگام کامپایل به زبان ماشین تبدیل می‌شوند این موضوع هم باعث امنیت کد و سرعت بسیار بالای اون نسبت به سایر زبان‌های برنامه‌نویسی دیگر مانند PHP شده‌است ! ، سرعت اجرایی کدهای ASP.NET Core بیشتر از ASP.NET Web Form بوده و سرعت ASP.NET Web Form نیز از PHP بیشتر بوده ( برای اثبات این موضوع آزمایش‌هایی زیادی انجام شده) متاسفانه چون یک سری اطلاعات غلط در رابطه با بیشتر بودن سرعت PHP نسبت به ASP.NET منتشر شده اکثر برنامه نویسان مبتدی فکر می‌کنند که سرعت اجرایی کدهای PHP ( به صورت مفسری کامپایل می‌شود ) از ASP.NET ( به زبان ماشین کامپایل می‌شود ) بیشتر بوده که اصلا اینطور نیست . در پلتفرم asp.net web form سیستم عامل مورد نیاز برای بارگزاری این وب سایت‌ها سیستم عامل ویندوز بود که به دلیل اشغال رم ویندوز نسبت به دگر سیستم عامل‌ها مثل لینوکس، این عیب در نسخه CORE بر طرف شد و وب سایت‌هایی ه با این نرم افزار نوشته می‌شوند قابلیت بارگزاری روی دیگر سیستم عامل‌ها را دارند.
این پلتفرم در سال 2017 جز پرکاربردترین و پردوامد‌ترین زبان هی برنامه‌نویسی دنیا معرفی شد.2
روش فنی ترجمه
ASP ازیک روش نمایش مرکب ترجمه‌ای استفاده می‌کند. درطول تالیف الگوی(.aspx) پرونده درون قالب کد تدوین می‌شود که یک درخت کنترل (مرکب) ساخته خواهد شد که قالب (ایستا)اصلی را نشان می‌دهد.
متن اصلی درون نمونه‌هایی ازکلاس کنترل اصلی می‌رود. کنترل‌های سرویس دهنده توسط نمونه‌هایی ازیک کلاس کنترل ویژه نشان داده می‌شوند. کد آغازین با کد نوشتاری کاربر(معمولا توسط مجمعی ازکلاس‌های جزئی چندگانه) و نتایج دریک ویژگی کلاس برای صفحه ترکیب شده‌است. صفحه مانند ریشه درخت کنترل مضاعف می‌شود.
درخواست‌های واقعی برای یک صفحه درمیان مرحله‌ای ازمراحل پردازش می‌شود. ابتدا، درطول مراحل بارگذاری نمونه‌ای ازکلاس صفحه ساخته می‌شود وکد بارگذاری اجرا می‌گردد. این حاصل درخت کنترل اصلی است که درحال حاضرمعمولا توسط روش‌هایی ازمراحل پیگیری در صفحه اداره می‌شود. همانند هرگره دردرخت، یک کنترل نشان داده شده‌است، مانند نمونه‌ای ازیک کلاس که می‌تواند ساختاردرخت را به خوبی با دستکاری خصوصیات/روش‌های گره‌های منحصربه‌فرد تغییرمی‌دهد. نهایتا درطول مرحله ترجمه یک دیدارگربرای دیدن هرگره درخت استفاده شده‌است. هرگره برای ترجمه خود با استفاده از روش‌هایی ازناظردرخواست می‌کند. کد HTML منتج برای سرویس گیرنده (Client) فرستاده می‌شود.
پس ازپردازش درخواست نمونه کلاس صفحه دورانداخته می‌شود وبا آن درخت کنترل تکمیل می‌شود.
پرونده‌های دیگر
سایرپرونده‌های الحاقی با نسخه‌های متفاوت ASP شامل:
ascx;
کنترل‌ها کاربرWEB: کنترل‌های معمول که درون صفحات WEB جای داده می‌شوند.
ashx
دیگر مجریان HTTP
asmx
صفحات سرویس دهنده WEB
axd
زمانیکه درweb.config، درخواست trace.axd فعال می‌شود، خروجی‌های سطح کاربردی‌ترسیم می‌شوند. همچنین برای رسیدگی‌کننده axd منبع WEB مخصوص استفاده می‌شود که به توسعه دهنده‌های مولفه/ کنترل اجازه می‌دهد تا بسته یک کنترل/مولفه را با عکس‌ها، سند، قالب آبشاری صفحات وغیره کامل کند. برای گسترش دریک پرونده انفرادی (یک مجمع)
مرورگر: مرورگر پرونده‌های ممکن را درقالب XML ذخیره می‌کند که درنسخه ۳ از ASP.NET ۲ که شامل بسیاری ازاینها یه صورت پیش‌فرض است، معرفی می‌گردد تا مرورگرهای WEB مشترک را پشتیبانی کند. این‌ها مشحص می‌کنند که مرورگرها کدام توانایی‌ها را دارند، بنابراین ASP.NET ۲ می‌تواند به صورت خودکاربرطبق نتیجه خروجی خود سفارشی و بهینه‌سازی شود. پرونده‌های مرورگرمخصوص برای دریافت (دانلود) رایگان برای استفاده دردسترس هستند. برای مثال، W3C Validator، به‌طوری‌که این به شکل صحیح استانداردهای تاییدی را نمایش می‌دهد.
config: اweb.config تنها پرونده مخصوص برنامه‌های WEB است که توسط قرارداد گسترش دهنده استفاده می‌گردد (به همین نحو machine.config درتمامی سرویس دهنده WEB وتمامی برنامه‌های درون آن اثرمی گذارد). اگر چه ASP.NET امکانات را برای ساخت واستفاده سایرپرونده‌های config فراهم می‌کند. این‌ها درقالب XML ذخیره می‌شوند بنابراین اجازه می‌دهند پیکربندی تغییرکند تا به سادگی ساخته شود.
cs/vb: درASP.NET ۲ هرپرونده ازپرونده‌های cs/vb درون پوشه App_Code قرارمی گیرد که به صورت پویا تالیف می‌گردد و در سرتاسر برنامه قابل دسترس است.
master: صفحات اصلی؛ مطرح شده درنسخه ۲٫۰
sitemap: پرونده‌های پیکربندی نقشه سایت
skin: پرونده‌های پوسته زمینه
resx: پرونده‌های منبع برای بین‌المللی ومحلی کردن. پرونده‌های منبع می‌توانند سراسری (به‌طور مثال پیام‌ها) یا محلی باشند که هریک معنی‌های خاصی برای یک aspx یا ascx یا پرونده دارند.
dbml: (نسخه ۳٫۵) لینک (برنامه‌نویسی) برای پرونده کلاس‌های داده SQL
ساختارفهرست راهنما
به‌طورکلی ساختار فهرست ASP.NET می‌تواند توسط اولویت‌های توسعه دهنده تعیین شود. صرف نظرازتعداد محدودی از نام‌های ذخیره شده، سایت می‌تواند هر تعداد از پوشه‌ها را پشتیبانی کند. ساختار معمولا انعکاس مستقیمی ازurlها است. هرچند ASP.NET قابلیت‌ها را برای جداسازی درخواست در هرمرحله از طول پردازش فراهم می‌کند، توسعه دهنده مجبورنیست درخواست‌ها را درسرتاسر یک برنامه مرکزی یا کنترل گر پیشین تبدیل کند.
نام‌های پوشه‌های ویژه:
App_Browsers: پرونده‌های معرفی مرورگر مخصوص سایت را نگه می‌دارد.
App_Code: پوشه «کدهای خام» است. سرویس دهنده ASP.NET به صورت خودکارپرونده‌ها(وزیرفهرست‌ها)ی درون این پوشه را درون انجمنی که درهرصفحه از سایت قابل دسترسی است، تالیف می‌کند. App_Code معمولا برای کد انتزاعی دستیابی داده، کد نمونه وکد تجاری استفاده خواهد شد. همچنین همه مشحصات سایت اجراکننده http و بخش‌های جدا و پیاده‌سازی سرویس وب در این پوشه می‌روند. مانند دیگران، توسعه دهنده می‌تواند برای فراهم‌سازی استفاده از App_Code یک مجمع جدا را با کدهای از پیش تالیف شده انتخاب کند.
App_Data: پوشه پیش‌فرض برای پایگاه‌های داده ازقبیل پرونده‌های.mdb در access وپرونده‌های.mdb درsql server. این پوشه معمولا تنها قابلیت ویرایش توسط یک برنامه را دارد.
App_LocalResources: شامل پرونده‌های منبع متمرکز برای صفحات منحصربه‌فرد سایت. به‌طور مثال پرونده‌ای که CheckOut.aspx.fr-FR.resx نامیده می‌شود، منابع متمرکزرا برای نسخه فرانسوی صفحات CheckOut.aspx نگه می‌دارد. زمانی‌که فرهنگ رابط کاربر برای فرانسه تنظیم می‌شود، ASP.NET به‌طورخودکاراین پرونده را برای این شرایط یافته و مورد استفاده قرارخواهد داد.
App_GlobalResources: پرونده‌های resx را با منبع محلی«متمرکز» قابل دسترس برای هرصفحه سایت نگه می‌دارد. این جایی است که توسعه دهنده ASP.NET نوعا پیام‌های متمرکز را که برای بیش ازیک صفحه مورد استفاده قرارمی گیرد، ذخیره می‌کند.
App_Themes: زمینه‌های متنوع «دیگر» سایت را نگه می‌دارد.
App_WebReferences: پرونده‌های اکتشافی و پرونده‌های زبان توصیف خدمات وب را برای ارجاع به سرویس وب که در سایت مورد استفاده قرارمی‌گیرند، نگه می‌کند.
کارایی
اهداف ASP ایجاد کارایی بر روی سایرفناوری‌های مبتنی بر متن (شامل ASP قدیمی) توسط تالیف کد سمت سرویس دهنده به یک یا بیشتر، از پرونده‌های DLL روی سرویس دهنده WEB است. این تآلیف به صورت خودکاراولین باری که یک صفحه درخواست می‌شود اتفاق می‌افتد. (که سبب می‌شود توسعه دهنده احتیاجی به انجام یک مرحله تالیف جداگانه برای صفحات نداشته باشد.) این ویژگی، سهولت توسعه ارائه توسط زبان‌های متنی را با نشان دادن کارایی برای تالیف دودویی فراهم می‌کند. به هرحال، تالیف می‌تواند سبب یک تاخیرقابل ملاحظه برای کاربرWEB زمانی‌که صفحه جدیدا ویرایش «نشر» شده را برای اولین باردرخواست می‌شود، شود.
ASPX وسایرپرونده‌های منبع دریک میزبان مجازی بر روی یکی از سرویس‌های اطلاعاتی اینترنت جای دارد (یا سایرسرویس دهنده‌های سازگار؛ درزیرسایرپیاده سازی‌ها را ببینید.) اولین باری که یک سرویس گیرنده صفحه‌ای را درخواست می‌کند، چارچوب کاری.NET پرونده(ها) را درون یک انجمن.NET تجزیه وتالیف کرده و پاسخ را ارسال می‌کند. درخواست‌های بعدی توسط پرونده‌های DLL انجام می‌شوند. به صورت پیش‌فرض به محض اولین درخواست ASP.NET سایت را بدون ایراد دردسته‌ای متشکل از۱۰۰۰ پرونده تالیف خواهدکرد. اگر به دلیل بروز مشکلی تالیف به طول انجامد، که در این حالت اندازه دسته یا راهبرد تالیف پیچیده بوده.
همچنین توسعه دهنده‌ها می‌توانند تالیف مقدماتی خودشان را قبل ازگسترش انتخاب کنند، که به منظور رفع احتیاج برای تالیف به موقع دریک محیط تولید می‌باشد.
گسترش
مایکروسافت بعضی ازچارچوب‌های کاری الحاقی متصل شده درون ASP.NET را منتشرمی سازد وقابلیت تابعی آن را توسعه می‌دهد. بعضی ازآنها:
ASP.NET AJAX: گسترش با مولفه‌های ضلع سرویس گیرنده همچنین ضلع سرویس دهنده برای نوشتن صفحات ASP.NET که قابلیت AJAX را متصل می‌کند.
ای‌اس‌پی‌دات‌نت ام‌وی‌سی: گسترش تالیف صفحات ASP.NET با استفاده ازمعماری MAV.
مقایسه ASP.NET با ASP قدیمی
ASP تلاش می‌کند تحول توسعه دهنده‌ها را ازتوسعه کاربرد ویندوز تا توسعه WEB توسط ارائه قابلیت ساخت صفحات مرکب از کنترل‌ها همانند یک رابط کاربری ویندوزساده نماید. یک کنترل WEB ازقبیل یک Button یا یک Label دربسیاری ازسبک‌ها همانند همتای ویندوزخودش عمل می‌کند. کد می‌تواند خصوصیات وپاسخ خود را به رویدادهایش ارجاع دهد. کنترل‌ها معلومات«فوت و فن» ترجمه خود را دارند: درحالی که کنترل‌های ویندوزخودشان را بر روی پرده ترسیم می‌کنند، کنترل‌های WEB قطعاتی ازHTML وجاوااسکریپت را تولید می‌کنند که بخشی ازفرم صفحه حاصل را به مرورگرکاربرنهایی می‌فرستد.
ASP.NET برنامه‌نویس را به توسعه کاربردها با استفاده ازنمونه رابط کاربرگرافیکی رویدادی(مدل event-driven GUI) وسریعترازمحیط‌های سندی مرسوم درWEB مانند ASP و PHP تشویق می‌کند. چارچوب کاری تلاش می‌کند فناوری‌های موجود از قبیل JAVASCRIPT را با مولفه‌های درونی همانند حالت دید برای به دست آوردن حالت پایدار«درخواست درونی» درمحیط WEB نا متمرکزاصلی ترکیب کند.
سایرتفاوت‌های مقایسه‌ای ASP قدیمی هستند:
سایرتفاوت‌های مقایسه‌ای ASP قدیمی هستند:
کد تالیف شده سبب اجرای سریع‌تر برنامه‌هایی همراه با به دام انداختن خطاهای زمان طراحی بیشتر در حین توسعه می‌شود.
عمدتا با استفاده از مستثنی کردن به‌وسیله قالب Try-Catch مدیریت خطاهای زمان اجرا را بهبود می‌بخشد.
شباهت به کاربردهای ویندوزی ازقبیل کنترل‌ها ورویدادها، که سبب ایجاد امکان توسعه رابط‌های کاربردی توانمند می‌شود که سابقا تنها درمیزکاریافت می‌شد.
مجموعه وسیعی ازکنترل‌ها و کابخانه‌های کلاس اجازه ساخت سریعتر برنامه‌های را می‌دهد، به‌علاوه کنترل‌های تعریف شده توسط کاربر همچون منوها، اجازه می‌دهد که معمولا از قالبها استفاده شود. طراحی این کنترل‌ها روی صفحه آسانتراست زیرا اغلب آن‌ها می‌توانند دربیشترویرایشگرها به صورت بصری عمل کنند.
ASP.NET دارای قابلیت استفاده هم زمان از چند زبان شناسایی شده در VB.NETمی‌باشد که اجازه می‌دهد تا صفحات WEB نوشته شوند با VB.NET و C# و J# و غیره.
توانایی Cache شدن تمام صفحه یا فقط بخشی ازآن برای بهبود نمایش.
توانایی استفاده ازمدل کد پشتیبان برای جداسازی منطق کار از ارائه.
اگرهرکاربرASP.NET درحافظه نفوذ کند، مجری ASP.NET میزبان دامنه برنامه دارای خطا را از بین می‌برد و برنامه را مجددا راه اندازی می‌کند.
حالت جلسه درASP.NET می‌تواند دریک پایگاه داده SQL Server یا دریک پردازش جداگانه در حال اجرا بر روی دستگاه ساده مانند سرویس دهنده WEB یا یک ماشین متفاوت ذخیره می‌شود. زمانی‌که سرویس دهندهWEB مجددا راه اندازی می‌شود یا پردازش‌کننده ASP.NET بازیافت می‌شود، مقادیر راه‌های جلسه از بین نمی‌رود.
نسخه‌های قبلی ASP.NET (1.۰ and ۱٫۱) به دلیل مغایرت با استانداردهای تاییدی مورد انتقاد بودند. HTML و جاوااسکریپتهای تولید شده به مرورگرسرویس گیرنده فرستاده می‌شدند که همیشه در برابر استانداردهای W3C/ECMA تایید شده نبودند. به‌علاوه گاهی اوقات چارچوب کاری مرورگر خصایص را نا درست تشخیص می‌دهد یا مرورگرهای WEB، به غیر از IE ساخته شده توسط مایکروسافت مانند نسخه‌های قبلی، HTML/JAVASCRIPT بازگردانی شده به این سرویس گیرنده‌ها را با بعضی از خصایص از بین رفته یا بعضی اوقات شکسته یا ناقص شناسایی می‌کنند.
کنترل‌های سرویس دهندهWEB: این‌ها کنترل‌های معرفی شده توسط ASP.net برای فراهم‌سازی رابط کاربری برای وب فرم هستند. این کنترل‌ها، کنترل‌ها ی مدیریت شده هستند و کنترل‌های WYSIWYG هستند. (چیزی که می‌بینید چیزی است که به دست آورده‌اید.«نمایش اطلاعات درحالت چاپ شدنی»)
معایب ASP
صفحات سرویس دهنده فعال قدیمی (ASP) وASP.NET می‌توانند در کنار یکدیگر در یک برنامه WEB اجرا شوند. این رویکرد به توسعه دهنده اجازه می‌دهد برنامه‌ها را به آهستگی جا به جا کند به جای آنکه همه آن‌ها را یک باره تغییرحالت دهد. درIIS ۶٫۰ وقبل ازآن، صفحاتی که با نسخه‌های متفاوتی ازچارچوب کاری ASP نوشته می‌شوند نمی‌توانستند حالت جلسه را بدون استفاده ازکتابخانه‌های مشخص ثابت تقسیم کند. این ایراد درASP.NET وجود ندارد و برنامه‌های ASP در کنار یکدیگر بر روی IIS ۷ اجرا می‌شود. در IIS ۷، نمونه‌ها می‌توانند درخطوط مجتمع اجرا شوند که اجازه می‌دهد تا نمونه‌ها درهرزبانی نوشته شود، تا برای هر درخواستی قابل نمایش گردد.
در برخی موارد در زمان اجرای ASP.NET پردازش عامل در حلقه می‌افتد. به‌طور مثال اگر فرایندی خارج از کنترل اجرا شود، سبب می‌شود که پردازش عامل بیش از ۶۰ درصد از حافظه اصلی سخت‌افزار موجود را استفاده کند پردازش عامل در حلقه می‌افتد. همچنین ممکن است در شرایطی که تعداد معینی از درخواست‌ها ارسال می‌شود، این اتفاق رخ دهد، برای مثال در یک سیکل زمانی. در این حالات اگر برنامه برای استفاده از یک سشن (نشست) تنظیم شده باشد، ممکن است این نشست از دست برود. اگربرنامه به حالت جلسه برای ذخیره کردن اطلاعات اعتبار سنجی وابسته باشد، و برنامه با استفاده از جلسات درون پردازشی پیکربندی شود، ممکن است در صورتی که پردازش درحلقه بیفتد ارتباط کاربر قطع شود.
نشانه‌هایی که ASP.NET ۲٫۰ تولید می‌کند توسط W3C تایید شده‌اند. اما این نکته حائز اهمبت است که ایا این افزایش قابل دسترسی است؟ یکی از این مزایا از یک لحاظ صفحات اکس‌اچ‌تی‌ام‌ال + نمایش CSS است. کنترل‌های متعدد از قبیل کنترل‌های ورود و کنترل‌های چند مرحله‌ای، به صورت پیش‌فرض از جداول HTML استفاده می‌کنند. مایکروسافت هم‌اکنون به سمت طرقی می‌رود که این مشکل را به وسیله انتشار کنترل‌های سازگارکننده ASP.NET 2.۰ CSS حل کند. به‌طور مثال افزودنی‌های رایگان که نشانه‌هایی مطابق با اکس‌اچ‌تی‌ام‌ال+CSS در دسترس تولید می‌کنند. به هر حال برخی از کنترل‌ها هنوز به جاوااسکریپت استناد می‌کنند.
ابزارهای توسعه
برخی ازبسته‌های نرم‌افزاری دردسترس که برای توسعه کاربردهای ASP.NET وجود دارند:
Microsoft Expression Web بخشی ازمجموعه کاربردی Microsoft Expression Studio
Visual Studio.NET برای (for ASP.NET 1.x)
ASP.NET Web Matrix (برای ASP.NET 1.x؛ اکنون کمتر پشتیبانی می‌شود: جایگزین شده توسط Visual Web Developer 2005 Express Edition مستقل)
Visual Web Developer 2005 Express Edition یا Visual Studio ۲۰۰۵ (برای ASP.NET 2.۰)
Visual Studio ۲۰۰۸ (برای ASP.NET 3.۵)
Macromedia HomeSite ۵٫۵ (برای برچسب‌های ASP)
Microsoft SharePoint Designer 1۲
Delphi 2006
MonoDevelop (مستقل«رایگان» /کد باز)
SharpDevelop (مستقل«رایگان» /کد باز)
Adobe Dreamweaver
چارچوب کاری‌ها
زمانی که عملیات توسعه توسط ASP.NET انجام می‌شود، لزومی به استفاده از آن برای مدل توسعه فرم‌های استاندارد وب نیست. چارچوب کاری‌های قابل ملاحظه‌ای که برای انواع طراحی شده‌اند شامل:
Castle Monorail، یک چاچوب کاری MVC کد باز با یک مدل اجرایی شبیه به روبی آن ریلز. چارچوب کاری معمولا به همراه Castle Active Record استفاده می‌شود که یک لایه ORM ساخته شده درNHibernate می‌باشد.
Spring.NET، بخشی ازچارچوب کاری ارتجاعی برای JAVA.
مدیریت وضعیت ASP.NET
Active Server Pages (ASP) ASP.NET
صفحات اصلی ASP
صفحه زرد مرگبار صفحه ASP.NET