ASP.NET

ASP مخفف کلمه Active Server Pages است و یک محصول منحصر به فرد برای شرکت مایکروسافت به حساب می آید ، این زبان برنامه نویسی اکنون منسوخ شده است و جای خود را به زبان اسکریپت نویسی ASP.NET داده است.
یک فریم ورک برای ساختن صفحات وب و وب سایت ها با HTML، CSS، JavaScript و اسکریپت های سمت سرور است.ASP.NET سه مدل متفاوت برای توسعه دارد:
•    Web Page
•    MVC یا Model View Controller
•    Web Forms
در واقع ASP.NET یک زبان برنامه نویسی نیست بلکه یک تکنولوژی برنامه نویسی وب با استفاده از دات نت است، شما می توانید با #C یا #F یا زبان های برنامه نویسی دیگر دات نت ASP.NET بنویسید ، اما از آنجایی که از آن به عنوان زبان یاد می‌شود ما نیز از ASP.NET به عنوان یک زبان برنامه نویسی یاد می کنیم.

Web Page (مدل صفحات منفرد) : ساده ترین مدل در ASP.NET است که از بسیاری جهات به PHP و ASP کلاسیک شباهت دارد. این مدل شامل موارد زیر است:
•    قالب های پیش فرض
•    ابزارهای کمکی برای پایگاه داده، ویدئو، تصاویر گرافیکی، رسانه ها و غیره
MVC : نرم افزارهای تحت وب را به 3 جزء مختلف تقسیم می کند:
•    مدل ها برای داده ها
•    View ها برای نمایش
•    کنترلرها برای ورودی

Web Form (مدل رویدادی) همان مدل رویداد محور سنتی است که موارد زیر را در بر می گیرد:

•    صفحات وبی که به همراه کنترل های سمت سرور هستند.
•    رویدادهای سمت سرور
•    کدهای سرور

بیشتر شرکت های و سازمان های بزرگ برای نرم افزارهای تحت وب خود از این زبان برنامه نویسی استفاده می کنند. نرم افزاری که بیشترین هماهنگی با این زبان برنامه نویسی را دارد به عنوان Microsoft Visual Studio شناخته می شود که در واقع محیط برنامه نویسی مایکروسافت محسوب می شود. در این نرم افزار قابلیت های بسیار زیادی برای برنامه نویسی بصورت پیشفرض قرار گرفته اند که کار برنامه نویسی را برای برنامه نویسان بسیار راحت می کند. معمولا تعداد خط های کدی که باید برای یک برنامه به زبان ASP.NET نوشته بشود نسبت به محصولات مشابه کمی بیشتر است که همین دلیل می تواند تا حدودی باعث زمانگیر بودن کدنویسی در این زبان برنامه نویسی برای فعالیت های پیچیده شود. در صورتیکه تغییری در هر خط کد از این زبان برنامه نویسی انجام شود به ناچار کل برنامه بایستی مجددا کامپایل شود ، بنابراین زمان برنامه نویسی تا حدودی افزایش می یابد.وب سروری که با این زبان برنامه نویسی هماهنگ است صرفا وب سرور شرکت مایکروسافت که همان IIS است می باشد و معمولا به عنوان پایگاه داده نیز در این نوع زبان برنامه نویسی از Microsoft SQL Server استفاده می شود
صفحات ASP.NET دارای پسوند aspx. است، و به طور معمول در ویژوال بیسیک یا سی‌شارپ نوشته می شود. کنترل های کاربر در ASP.NET می توان به زبان های مختلف، از جمله ++ C و جاوا نوشته شود. هنگامی که یک مرورگر درخواست یک فایل ASP.NET را دارد، موتور ASP.NET فایل را می خواند، اسکریپت را در فایل اجرا و تالیف می کند، و نتیجه را به شکل زبان HTML ساده به مرورگر برمی گرداند.
يک فايل ASP مشابه فايل Html است .
▪محتويات يک فايل ASP شامل : متن ، Html ، XML و اسکريپت است .
▪اسکريپت های موجود در يک فايل ASP بر روی سرويس دهنده اجراء می گردنند.
▪فايل های ASP دارای انشعاب  asp می باشند.
▪ پس از درخواست فايل های  ASP توسط کاربران ، در ابتدا محتويات ( اسکريپت ها ) مربوطه بر روی سرويس دهنده اجراء و  در ادامه نتايج  بصورت تگ های Html برای کاربر ارسال خواهد شد.
آشنائی اوليه با  ASP کلاسيک می تواند دارای جنبه های مثبتی از بعد فراگيری ASP.NET با شد . +ASP  همان ASP.NET است . زمانيکه ما کروسافت ASP.NET را طراحی نمود ،در ابتدا از  نام فوق استفاده گرديد .

ASP.NET Razor :

Razor یک نحو نشانه گذاری جدید و ساده برای تعبیه کد سرور در صفحات وب ASP.NET است، که بسیار شبیه به ASP کلاسیک است. البته یادگیری و استفاده از آن نسبت به مدل کلاسیک ساده تر است.

دات نت فريمورک :

دات نت فريمورک، زير ساخت پلات فورم جديد دات نت است . فريمورک فوق ، يک محيط عمومی برای ايجاد ، بکارگيری و اجرای برنامه های تحت وب و سرويس های وب  را فراهم می نمايد .
دات نت فريمورک قادر به ارائه سرويس ها و خدمات متفاوت به مجموعه وسيعی از سيستم های کامپيوتری است . دات نت فريمورک از زبانهای متعددی حمايت می نمايد . C++,C#,VB,Jscript نمونه هائی در اين زمينه  می باشند.

زبان های برنامه نویسی ASP.NET
آموزش ASP.NET، زبان های برنامه نویسی زیر را در بردارد:
ویژوال بیسیک (VB.NET)
سی‌شارپ

روش فنی ترجمه :

ASP از یک روش نمایش مرکب ترجمه‌ای استفاده می‌کند. در طول تألیف الگوی(.aspx) پرونده درون قالب کد تدوین می‌شود که یک درخت کنترل (مرکب) ساخته خواهد شد که قالب (ایستا)اصلی را نشان می‌دهد. متن اصلی درون نمونه‌هایی ازکلاس کنترل اصلی می‌رود. کنترل‌های سرویس دهنده توسط نمونه‌هایی از یک کلاس کنترل ویژه نشان داده می‌شوند. کد آغازین با کد نوشتاری کاربر(معمولاً توسط مجمعی ازکلاس‌های جزئی چندگانه) و نتایج دریک ویژگی کلاس برای صفحه ترکیب شده‌است. صفحه مانند ریشه درخت کنترل مضاعف می‌شود.
درخواست‌های واقعی برای یک صفحه درمیان مرحله‌ای ازمراحل پردازش می‌شود. ابتدا، در طول مراحل بارگذاری نمونه‌ای ازکلاس صفحه ساخته می‌شود وکد بارگذاری اجرا می‌گردد. این حاصل درخت کنترل اصلی است که در حال حاضرمعمولاً توسط روش‌هایی ازمراحل پیگیری در صفحه اداره می‌شود. همانند هرگره دردرخت، یک کنترل نشان داده شده‌است، مانند نمونه‌ای از یک کلاس که می‌تواند ساختاردرخت را به خوبی با دستکاری خصوصیات/روش‌های گره‌های منحصربه‌فرد تغییرمی‌دهد. نهایتاً در طول مرحله ترجمه یک دیدارگربرای دیدن هرگره درخت استفاده شده‌است. هرگره برای ترجمه خود با استفاده از روش‌هایی ازناظردرخواست می‌کند. کد HTML منتج برای سرویس گیرنده (Client) فرستاده می‌شود.
پس ازپردازش درخواست نمونهٔ کلاس صفحه دورانداخته می‌شود وبا آن درخت کنترل تکمیل می‌شود.

 تفاوت های ASP کلاسيک و ASP.NET  :

 ASP.NET  زبان های متعددی  را حمايت می نمايد  .
 ASP.NET مجموعه گسترده ای از کنترل های جديد و عناصر مبتنی بر XML را ارائه می دهد.
 ASP.NET قابليت اعتبارسنجی کاربران با توانائی بالا را دارا است .
افزايش کارائی سيستم از طريق اجرای کدهای کامپایل شده
کدهای ASP.NET بطور کامل با نسخه ASP کلاسيک سازگار نمی باشند.
برخی از ويژگی های جديد در ASP.NET  
تعداد بالای زبانهای برنامه نويسی حمايت شده
کنترل های قابل برنامه نويسی
برنامه نويسی مبتنی بر Event
استفاده از عناصر مبتنی بر Xml  
اعتبار سنجی کاربران با استفاده از Account و قوانين
افزايش کارائی با توجه به کامپايل نمودن کدها
پيکربندی و بکارگيری آسان

ابزارهای توسعه ASP.NET :

ASP.NET از ابزار توسعه ی زیر پشتیبانی می کند:
وب ماتریکس (WebMatrix)
 Visual Web Developer
ویژوال استدیو (Visual Studio)
در طراحی سایت با ASP.NET، از وب ماتریکس برای صفحات وب، و Visual Web Developer برای MVC و فرم های وب استفاده می شود.
پسوند فایل های ASP.NET
در طراحی سایت با استفاده از ASP.NET، فایل های ASP.NET بسته به ترکیبی که دارند، دارای پسوند های مختلفی هستند:
• فایل های ASP کلاسیک دارای پسوند فایل asp. هستند.
• فایل های ASP.NET دارای پسوند فایل aspx. هستند.
• فایل های ASP.NET با ترکیب #Razor C دارای پسوند فایل cshtml. هستند.
• فایل های ASP.NET با ترکیب Razor VB دارای پسوند فایلvbhtml. هستند.