آموزش ASP.NET
ASP.Net یک platform (بستر اجرای نرم افزار) ویژه ی توسعه ی وب می باشد که یک مدل برنامه نویسی ، یک زیرساخت نرم افزار جامع و سرویس های متنوعی برای ساخت نرم افزار های تحت وب کارامد و قدرتمند برای PC همانند موبایل ها ارائه می دهد.ASP.Net علاوه بر پروتکول HTTP از دستورات و سیاست های HTTP برای تنظیم یک ارتباط و همکاری دوطرفه از مرورگر به سرور استفاده می کند.
ASP.Net بخشی از بستر اجرای نرم افزار (platform) Microsoft.Net می باشد. اپلیکیشن های تحت ASP.Net کدهای ترجمه یا کامپایل شده ای هستند که از مولفه های (component) توسعه پذیر (extensible) و قابل استفاده ی مجدد موجود در.Net Framework استفاده می کند. این کدها می توانند از کلیه ی سلسله مراتب (hierarchy) کلاس ها در.Net Framework استفاده کنند.
آموزش LINQ
نکته: اگر تقریبا با زبان query مانند SQL یا XQuery آشنایی دارید، میتوانید از قسمت های زیادی از این بخش بگذزید. در مورد "from clause" در بخش بعدی خواهید خواند تا در مورد نرنیب بندها در عبارات LINQ query یاد بگیرید.
ویژگی های C# که LINQ را پشنیبانی می کنند: این بخش سازه های جدید زبان، معرفی شده در C# 3.0 را معرفی می کند. گرچه همه ی این ویژگی ها تا حدی با query های LINQ استفاده می شوند، اما به LINQ محدود نیستند و می توانند در هر کانتکستی که مفید هستند، استفاده شوند.
تبدیل داده با LINQ: Language-Integrated Query (LINQ) تنها در مورد بازیابی داده نیست. بلکه یک ابزار قدرتمند نیز برای تبدیل داده می باشد. می باشد. با استفاده از LINQ queryمی توانید از ترتیب منبع به عنوان ورودی استفاده کنید و آن را به روش های زیادی برای ایجاد ترتیب خروجی جدید، اصلاح کنید. شما می توانید خود ترتیب را بدون بدون تغییر عناصر با مرتب کردن و گروه بندی کردن اصلاح کنید. اما شاید قویترین ویژگی query های LINQ توانایی در ایجاد انواع جدید می باشد. این امر در عبارت select تکمیل می شود. برای مثال می توانید عملکردهای زیر را اجرا کنید:
مجموعه ای از ویژگی هاست که در Visual Studio 2008 مطرح می شود. در طول زمان زبان های متفاوتی برای انواع منابع داده گسترش پیدا کرده اند، به عنوان مثال SQL برای دیتابیس های رابطه ای ( relational database) و XQuery برای XML. بنابراین توسعه دهنده ها باید یک زبان query جدید برای هر نوع منبع داده و یا فرمت داده ای که باید پشتیبانی شود، فرا بگیرند. LINQ با ارائه ی یک مدل منسجم برای کار با داده در مقابل انواع مختلف منابع داده و فرمت ها، این موقعیت را ساده می سازد. در یک LINQ query همیشه با آبجکت ها کار می کنید. شما از الگوهای کد گذاری مشابه برای query استفاده می کنید و در داکیومنت های XML، دیتابیس های SQL، ADO.NET Datasets،مجموعه های .NET، و هر فرمت دیگری که برای آن یک تامین کننده ی LINQ وجود دارد، داده را تبدیل می کنید.
1. وقتی نمونه ای از یک مجموعه ی جنریک مانند List<T> ایجاد می کنید، نوع آبجکت ها را که در لیست حفظ خواهند شد جایگزین T خواهید کرد. برای مثال لیستی از رشته ها با عنوانList<string> بیان شده اند و لیستی از آبجکت های Customer به عنوان List<Customer> بیان می شوند. یک لیست جنریک به طور جدی تایپ شده اند و مزایای زیادی برای مجموعه هایی که عناصر خود را به عنوان Object ذخیره می کنند، دارد. اگر سعی کنید یک Customer به یک List<string> اضافه کنید، در زمان کامپایل یک خطا دریافت خواهید کرد. استفاده از مجموعه های جنریک آسان می باشد، زیرا مجبور به اجرای run-time type-casting نیستید. 2. IEnumerable<T> اینترفیسی می باشد که گروه های جنریک را قادر می سازد تا با استفاده از عبارت foreach شمرده شوند. گروه های مجموعه ی جنریک از IEnumerable<T> تنها به عنوان گروه های مجموعه ی غیرعمومی (non-generic) پشتیبانی می کند، به عنوان مثال ArrayList که از IEnumerable پشتیبانی می کند.
اکثر query ها در داکیومنتیشن مقدماتی Language Integrated Query (LINQ) با استفاده از ترکیب اعلانی LINQ نوشته می شوند. به هرحال وقتی که کد کامپایل می شود، ترکیب query باید به روش فراخوانی ها برای .NET common language runtime (CLR) ترجمه شود. این فراخوانی ها اپراتورهای استاندارد query را تقاضا می کند که دارای نام هایی مانند Where, Select, GroupBy, Join, Max, و Average می باشند. می توانید آنها را به طور مستقیم با استفاده از ترکیب متود به جای ترکیب query فرا بخوانید.
برای اینکه سوالات را به طور موثر بنویسید، باید درک کنید که همه ی متغیرها در یک عملکرد کامل query چگونه با یکدیگر در ارتباط هستند. اگر این روابط را درک کنید خیلی راحت تر متوجه نمونه های LINQ و مثال های کد در پرونده سازی می شوید. به علاوه متوجه خواهید شد که هنگامی که متغیرها به طور ضمنی با استفاده از var تایپ می شوند، پشت صحنه ها چه اتفاقی می افتد.