TAHA
10-28-2009, 10:24 PM
آشنائی اوليه با ASP. NET 3.5 و VS 2008
شركت مايكروسافت در نوزدهم نوامبر 2007 ( بيست و هشتم آبان ماه هشتاد و شش ) ، رسما" نسخه ASP. NET 3.5 و ويژوال استوديو 2008 را عرضه كرد .
همانند نسخه شماره 3 كه نسبت به نسخه شماره 2 دارای امكانات بيشتری بود ، در اين نسخه نيز نسبت به نسخه قبلی امكانات جديدی اضافه شده است . اسمبلی های اساسی نصب شده توسط نسخه شماره 2 فريمورك ، همچنان در نسخه های 2 و 5 / 3 قابل استفاده می باشند . به عبارت ديگر ، در نسخه شماره 5 / 3 ، مفاهيم و نحوه نوشتن كد و مواردی از اين قبيل نسبت به نسخه شماره 2 تغيير نكرده است . در اين نسخه ، نوع ها ، ويژگی ها و قابليت های جديدی به فريمورك اضافه شده است .
ويژوال استوديو 2008 ، ابزاری قدرتمند برای پياده سازی برنامه های ASP. NET است . برخلاف نسخه قبل كه صرفا" مختص يك نسخه خاص فريمورك بود ( به عنوان نمونه در ويژوال استوديو 2003 ، نسخه ASP.NET 1.1 و در ويژوال استوديو 2005 نسخه ASP. NET 2.0 ) ، از ويژوال استوديو 2008 می توان به همراه چندين نسخه فريمورك استفاده كرد . شما می توانيد از طريق يك ليست drop down ، نوع فريمورك خود جهت پياده سازی برنامه ها ( به عنوان نمونه ASP. NET 2.0 ، ASP. NET 3.0 و يا ASP. NET 3.5 ) را انتخاب نمائيد .
شكل 1 نحوه انتخاب فريمورك در زمان ايجاد يك وب سايت جديد را در ويژوال استوديو 2008 نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-3.jpg
شكل 1 : نحوه انتخاب فريمورك در زمان ايجاد يك وب سايت جديد در ويژوال استوديو 2008
در ويژوال استوديو 2008 ،در محيط طراحی نيز تغييراتی در جهت قدرتمند تر شدن آن ايجاد شده است . افزودن امكاناتی نظير هوشمندی در تايپ و اشكال زدائی كدهای جاوا اسكريپت و قابليت مشاهده و حتی توقف در هسته كد فريمورك دات نت در حين اشكال زدائی نمونه هائی در اين زمينه می باشند .
در اين مقاله مروری خواهيم داشت به ويژگی های جديد 5 / 3 و امكانات جديد مرتبط با ASP. NET در ويژوال استوديو 2008 .
ارائه يك نسخه جديد فريمورك دات نت و دستاوردهای آن
زمانی كه يك نسخه جديد ASP. NET ارائه می گردد ، در واقع يك نسخه جديد از فريمورك دات نت نيز ارائه می گردد . كنترل های وب و منطق برخورد با صفحات در كلاس هائی خاص از فريمورك دات نت پياده سازی شده اند .
فريمورك دات نت دارای امكانات فراوانی است كه از آنها در شرايط مختلف استفاده می شود و همه چيز به ASP. NET خلاصه نمی گردد .
متعاقب ارائه يك نسخه جديد از فريمورك دات نت ، امكانات و ويژگی های جديدی نيز به همراه آن ارائه می گردد كه می توان آنها را در سه گروه زير تقسيم كرد :
<LI dir=rtl>ويژگی هائی از فريمورك كه مختص پياده كنندگان برنامه های ASP.NET ارائه شده اند :اين نوع ويژگی ها جهت پياده سازی برنامه هایASP. NET بسيار مهم و حياتی می باشند . مثلا" پس از معرفی نسخه شماره 2 ASP. NET ، قابليت های جديدی نظير كنترل Gridview و كنترل های نسبت دهی داده نظير sqlDataSource و ObjectDataSource در اختيار پياده كنندگان قرار گرفت .
ويژگی هائی از فريمورك كه می تواند برای پياده كنندگان برنامه های ASP. NET نيز مفيد واقع شود : اين نوع از ويژگی ها صرفا" مختص ASP. NET نمی باشند و از آنها می توان در مواردی ديگر نظير WinForm نيز استفاده كرد . از پتانسيل های فوق عموما" در ASP. NET استفاده می گردد . به عنوان نمونه ، فريمورك 2 ، نوع های anonymous و Generics را معرفی و وضعيت Dataset را بهبود بخشيد .
هيچكدام از موارد فوق مختص ASP. NET نمی باشند ، ولی اغلب توسط پياده كنندگان ASP. NET استفاده می گردند .
ويژگی هائی از فريمورك كه توسط پياده كنندگان ASP. NET استفاده نمی گردد . فريمورك دات نت مشتمل بر تعداد زيادی از كلاس هائی است كه به ندرت و يا هرگر توسط پياده كنندگان ASP. NET استفاده نمی گردد نظير كلاس های موجود در System.Windows.Forms .
در ادامه به بررسی دو گروه اوليه خواهيم پرداخت .
در ابتدا لازم است به اين موضوع اشاره نمائيم كه شما می توانيد يك پوستر از فريمورك 5 / 3 با فرمت pdf را از اين محل (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fdownload.microsoft .com%2Fdownload%2F4%2Fa%2F3%2F4a3c7c55-84ab-4588-84a4-f96424a7d82d%2FNET35_Namespaces_Poster_LORES.pdf) دريافت نمائيد . علاوه بر وجود تعداد زيادی از كلاس ها و namespace در فريمورك دات نت ، اين پوستر دو چيز را كاملا" شفاف نشان می دهد : اين كه چه ميزان از فريمورك دات نت با ASP.NET مرتبط نيست و امكانات و ويژگی های جديد اضافه شده به هر يك از نسخه های فريمورك دات نت .
شكل 2 ويژگی های ASP. NET 2.0 و قابليت های جديد اضافه شده در هر يك از نسخه های 3 و 5 / 3 را نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-1.jpg
شكل 2 : امكانات اضافه شده به هر يك از نسخه های فريمورك دات نت
برای كسب اطلاعات بيشتر در خصوص اين موضوع كه چگونه دات نت 5 / 3 ، اسمبلی های اضافه و قابليت های جديدی را به دات نت 2 اضافه كرده است ، به وبلاگ Daniel Moth (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2F) مبحث "فريمورك 5 / 3 (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2FBlog%2F2007%2F06%2Fnet-framework-35.html) " مراجعه نمائيد .
در وبلاگ فوق و مبحث " Visual Studio 2008 Stack (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2FBlog%2F2007%2F06%2Fvisual-studio-2008-stack.html)" ، يك تصوير شفاف از تغييرات انجام شده در ويژوال استوديو ، زبان های برنامه نويسی ، كتابخانه های فريمورك و CLR نيز ارائه شده است .
مروری بر ويژگی هائی از فريمورك كه مختص پياده كنندگان برنامه های ASP.NET ارائه شده اند
ASP.NET 3.5 يك نسخه جديد و ارتقاء يافته نسبت به نسخه قبلی است كه سه ويژگی جديد زير در آن از ساير موارد مشهود تر است :
<LI dir=rtl>حمايت ذاتی از ASP.NET AJAX
<LI dir=rtl>كنترل ListView
كنترل DataPager
قبل از ASP.NET 3.5 ، لازم بود كه در ابتدا فريمورك ASP.NET AJAX (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Fajax%2F) مايكروسافت دانلود و بر روی سيستم به عنوان يك الحاقيه نصب گردد . در ASP.NET 3.5 ، كلاس های مرتبط با AJAX مستقيما" در فريمورك دات نت ساخته شده اند تا امكان ساخت سريع و آسان برنامه های وب مرتبط با AJAX در برنامه های ASP.NET فراهم گردد .
ASP.NET 2.0 به همراه خود كنترل های داده جديدی نظير Gridview، DetailsView و FormView را معرفی كرد . كنترل GridView ، ليستی از ركوردها را در يك جدول نمايش می دهد . كنترل های DetailsView و FormView در هر لحظه يك ركورد را نمايش می هند . كنترل DetailView در يك ساختار نمايشی مشابه جدول و FormView در يك لی اوت متاثر از يك تمپليت خاص ، اطلاعات خود را نمايش می دهند .
ListView در واقع يك نسخه ارتقاء يافته از كنترل های DataList و Repeater است كه می تواند چندين ركورد را به همراه قابليت هائی نظير Gridview نمايش دهد . با اين تفاوت كه بكارگيری تمپليت ها با انعطاف بيشتری انجام می گردد .
كنترل DataPager به صورت يك نوع اينترفيس free-standing paging كار می كند . به عبارت ديگر كنترل فوق ، يك رابط كاربر paging را تفسير ( به عنوان نمونه صفحه بعد ، قبل ، دكمه آخر ) و با يك كنترل وب داده مرتبط می شود . كنترل فوق صرفا" با آن گروه از كنترل هائی كار می كند كه IPageableItemContainer interface را پياده سازی كرده باشند كه صرفا" ( در حال حاضر ) در كنترل ListView وجود دارد .
برای آشنائی بيشتر با نحوه استفاده از كنترل های ListView و DataPager می توانيد به وبلاگ Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2F) مبحث " كنترل ListView (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F08%2F10%2Fthe-asp-listview-control-part-1-building-a-product-listing-page-with-clean-css-ui.aspx)" مراجعه نمائيد. مايكروسافت نيز ويدئوهای جديدی (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2F) جهت آشنائی با نحوه استفاده از كنترل های ListView (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2Fvideo-225.aspx)و DataPager (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2Fvideo-221.aspx) ارائه كرده است .
مروری بر ويژگی هائی از فريمورك كه می تواند برای پياده كنندگان برنامه های ASP. NET نيز مفيد واقع شود
مهمترين ويژگی ارائه شده در نسخه شماره 5 / 3 فريمورك دات نت ، معرفی LINQ ( برگرفته شده از Language Integrated Query ) است . با استفاده از فناوری فوق ، می توان گرامری شبيه SQL را با استفاده از زبان های برنامه نويسی VB و #C نوشت تا پياده كنندگان بتوانند از داده در برنامه های خود استفاده نمايند .
به همراه ويژوال استوديو 2008 يك LINQ to SQL designer ارائه شده است كه به كمك آن می توان يك بانك اطلاعاتی را به عنوان يك LINQ به SQL object model مدل سازی كرد . پس از مدل سازی بانك اطلاعاتی ، می توان به سادگی كدهای مورد نظر خود را به منظور كار با داده نوشت .
كد زير نحوه بازيابی محصولات گروه Test از بانك اطلاعاتی نمونه Northwind را با گرامر مبتنی بر LINQ توسط VB و #C نشان می دهد ( كلاس NorthwindDataContext بر اساس مدل طراحی شده ، ايجاد شده است ) .
C#
NorthwindDataContext db = new NorthwindDataContext() ;
var Products = from p in db.Products
Where p.category.CategoryName == "Test"
select P; VB
Dim db AS New NorthwindDataContext Dim products = From p In db.products _
Where p.category.categoryName = "Test" _
Select p
LINQ ، به سادگی يك گرامر را جهت كار با داده تعريف می كند . همچنين ، ORMs (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fen.wikipedia.org%2 Fwiki%2FObject-relational_mapping)( برگرفته شده از Object Relational Mappers ) از قبل تعبيه شده ای وجود دارد كه فريمورك مرتبط را به منظور توليد عبارات LINQ ايجاد می نمايد تا بر روی يك بانك اطلاعاتی و يا XML كار كند .
Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2F) در چندين مقاله با عنوان " استفاده از LINQ برای پياده سازی SQL ORM (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F05%2F19%2Fusing-linq-to-sql-part-1.aspx)" به اين موضوع پرداخته است .
ويژوال استوديو 2008 از گرامر LINQ در زمان استفاده از آن به صورت full-IntelliSense حمايت می نمايد . گرامر LINQ از طريق امكانات جديد ارائه شده در فريمورك دات نت نظير خصلت های اتوماتيك ، متدهای extension و عبارات lambda ، امكان پذير می باشد . پرداختن به موارد فوق خارج از حوصله اين مقاله است .
مروری بر ويژگی های جديد ويژوال استوديو 2008
ويژوال استوديو 2008 امكانات متعددی را در جهت كمك به پياده كنندگان نظير بهبود محيط Designer ، امكانات پيشرفته ويرايش CSS و اشكال زدائی جاوا اسكريپت ارائه كرده است . در اين نسخه از ويژوال استوديو برای پياده سازی برنامه های وب می توان يكی از محيط های NET 2.0, NET 3.0 و يا NET 3.5 را انتخاب كرد . اين بدان معنی است كه شما می توانيد از ويژوال استوديو برای كار بر روی يك وب سايت پياده سازی شده با ASP.NET 2.0 نيز استفاده نمائيد . در ادامه مروری سريع خواهيم داشت به هر يك از موارد فوق .
در نسخه قبلی ويژوال استوديو ، پياده كنندگان می توانستند از Designer و يا Source view در زمان ويرايش عناصر ويژوال در يك صفحه ASP.NET استفاده نمايند . محيط Designer يك نمايش WYSISYG (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fen.wikipedia.org%2 Fwiki%2FWYSIWYG)از صفحه را نمايش می دهد . در Source view ، كدهای markup مربوط به كنترل ها نمايش داده می شود . در ويژوال استوديو 2008 ، يك ويژگی جديد با نام Split screen ارائه شده است كه توسط آن كدهای markup در يك pane و WYSIWYG در pane ديگر نمايش داده می شود . زمانی كه در مد split قرار می گيريم ، همزمان با اضافه كردن محتويات به Designer ، بطور اتوماتيك كدهای markup در Source view بهنگام می گردند( متاسفانه عكس اين حالت درست نيست ) . اگر شما markup جديدی را بطور دستی در Source view درج نمائيد ، مجبور خواهيد بود كه صفحه را save و يا دكمه refresh را كليك نمائيد تا Designer view نيز بهنگام گردد .
شكل 3 ، Split screen را در ويژوال استوديو 2008 نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-2.jpg
شكل 3 : Split screen در ويژوال استوديو 2008
همزمان با افزايش تعهد مايكروسافت به AJAX ، ويژوال استوديو 2008 امكانات حمايتی بهتری را در ارتباط با جاوا اسكريپت ارائه كرده است . امكانات زمان طراحی و اشكال زدائی بطور كامل بهبود يافته اند . زمانی كه از طريق source view اقدام به نوشتن كدهای جاوا اسكريپت می نمائيد ، امكانات و قابليت های IntelliSense مشابه در زمان نوشتن كدهای سمت سرويس دهنده در اختيار شما گذاشته می شود . اين شامل حمايت از كدهای جاوا اسكريپت inline و اسكريپت هائی است كه از طريق فايل های جاوا اسكريپت خارجی به آنها مراجعه می گردد .
( دستيابی به فايل های اسكريپت از طريق گرامری مشابه <script language="javascript" src="fileName"> </script> امكان پذير است ) .
Scott Guthrie در وبلاگ خود و با عنوان VS 2008 JavaScript IntelliSense (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F06%2F21%2Fvs-2008-javascript-intellisense.aspx) به اين موضوع اشاره كرده است كه پياده كنندگان می توانيد حتی تذكرات هوشمند را به توابع جاوا اسكريپت و با استفاده از توضيحات XML اضافه نمائيد . وی همچنين در وبلاگ خود به بررسی قابليت های اشكال زدائی جاوا اسكريپت (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F07%2F19%2Fvs-2008-javascript-debugging.aspx) پرداخته است .
اخيرا" (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.internetnews.c om%2Fdev-news%2Farticle.php%2F3703261)شركت مايكروسافت عنوان نموده است كه به زودی كد فريمورك دات نت را تحت مجوز MS-RL (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.microsoft.com% 2Fresources%2Fsharedsource%2Flicensingbasics%2Fref erencelicense.mspx)در اختيار عموم قرار خواهد داد . نكته جالب مرتبط با اين رويداد برای پياده كنندگانی كه از ويژوال استوديو استفاده می نمايند در اين است كه آنها می توانند ويژوال استوديو 2008 را به يك URL اشاره دهند كه شامل نمادهای اشكال زدائی برای فريمورك دات نت است . بدين ترتيب ، در زمان اشكال زدائی امكان ورود به كد فريمورك دات نت فراهم می گردد . اين موضوع می تواند به پياده كنندگان كمك نمايد تا شناخت بهتر و عميق تری نسبت به نحوه عملكرد فريمورك دات نت پيدا نمايند .
هنوز مشخص نشده است ( در زمان نوشتن اين مطلب ) كه آيا مايكروسافت نمادهای اشكال زدائی را از طريق يك URL عمومی در دسترس قرار خواهد داد . پس از عموميت URL ، پياده كنندگان می توانند از طريق ويژوال استوديو به آن اشاره نمايند . جهت كسب اطلاعات بيشتر به وبلاگ Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F10%2F03%2Freleasing-the-source-code-for-the-net-framework-libraries.aspx) مراجعه نمائيد .
خلاصه
نسخه جديد ويژوال استوديو و ASP.NET ويژگی های جديد و جالبی را نسبت به نسخه های قبلی در اختيار پياده كنندگان قرار می دهد. در ASP.NET 3.5 ، مايكروسافت فريمورك ASP.NET AJAX را به عنوان بخش لاينفك فريمورك دات نت معرفی كرده است و به همراه ساير كنترل ها ، كنترل های جديد ListView و DataPager را ارائه كرده است .
در ويژوال استوديو 2008 ، تغييرات متعددی نظير افزايش توانمندی پياده كنندگان جهت طراحی رابط كاربر ( يك محيط طراحی قوی تر ) ، بهبود قابليت های ويرايش CSS ، حمايت از اشكال زدائی و تايپ هوشمند جاوا اسكريپت ، قابليت انتخاب نسخه فريمورك برای پياده سازی برنامه وب ارائه شده است
شركت مايكروسافت در نوزدهم نوامبر 2007 ( بيست و هشتم آبان ماه هشتاد و شش ) ، رسما" نسخه ASP. NET 3.5 و ويژوال استوديو 2008 را عرضه كرد .
همانند نسخه شماره 3 كه نسبت به نسخه شماره 2 دارای امكانات بيشتری بود ، در اين نسخه نيز نسبت به نسخه قبلی امكانات جديدی اضافه شده است . اسمبلی های اساسی نصب شده توسط نسخه شماره 2 فريمورك ، همچنان در نسخه های 2 و 5 / 3 قابل استفاده می باشند . به عبارت ديگر ، در نسخه شماره 5 / 3 ، مفاهيم و نحوه نوشتن كد و مواردی از اين قبيل نسبت به نسخه شماره 2 تغيير نكرده است . در اين نسخه ، نوع ها ، ويژگی ها و قابليت های جديدی به فريمورك اضافه شده است .
ويژوال استوديو 2008 ، ابزاری قدرتمند برای پياده سازی برنامه های ASP. NET است . برخلاف نسخه قبل كه صرفا" مختص يك نسخه خاص فريمورك بود ( به عنوان نمونه در ويژوال استوديو 2003 ، نسخه ASP.NET 1.1 و در ويژوال استوديو 2005 نسخه ASP. NET 2.0 ) ، از ويژوال استوديو 2008 می توان به همراه چندين نسخه فريمورك استفاده كرد . شما می توانيد از طريق يك ليست drop down ، نوع فريمورك خود جهت پياده سازی برنامه ها ( به عنوان نمونه ASP. NET 2.0 ، ASP. NET 3.0 و يا ASP. NET 3.5 ) را انتخاب نمائيد .
شكل 1 نحوه انتخاب فريمورك در زمان ايجاد يك وب سايت جديد را در ويژوال استوديو 2008 نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-3.jpg
شكل 1 : نحوه انتخاب فريمورك در زمان ايجاد يك وب سايت جديد در ويژوال استوديو 2008
در ويژوال استوديو 2008 ،در محيط طراحی نيز تغييراتی در جهت قدرتمند تر شدن آن ايجاد شده است . افزودن امكاناتی نظير هوشمندی در تايپ و اشكال زدائی كدهای جاوا اسكريپت و قابليت مشاهده و حتی توقف در هسته كد فريمورك دات نت در حين اشكال زدائی نمونه هائی در اين زمينه می باشند .
در اين مقاله مروری خواهيم داشت به ويژگی های جديد 5 / 3 و امكانات جديد مرتبط با ASP. NET در ويژوال استوديو 2008 .
ارائه يك نسخه جديد فريمورك دات نت و دستاوردهای آن
زمانی كه يك نسخه جديد ASP. NET ارائه می گردد ، در واقع يك نسخه جديد از فريمورك دات نت نيز ارائه می گردد . كنترل های وب و منطق برخورد با صفحات در كلاس هائی خاص از فريمورك دات نت پياده سازی شده اند .
فريمورك دات نت دارای امكانات فراوانی است كه از آنها در شرايط مختلف استفاده می شود و همه چيز به ASP. NET خلاصه نمی گردد .
متعاقب ارائه يك نسخه جديد از فريمورك دات نت ، امكانات و ويژگی های جديدی نيز به همراه آن ارائه می گردد كه می توان آنها را در سه گروه زير تقسيم كرد :
<LI dir=rtl>ويژگی هائی از فريمورك كه مختص پياده كنندگان برنامه های ASP.NET ارائه شده اند :اين نوع ويژگی ها جهت پياده سازی برنامه هایASP. NET بسيار مهم و حياتی می باشند . مثلا" پس از معرفی نسخه شماره 2 ASP. NET ، قابليت های جديدی نظير كنترل Gridview و كنترل های نسبت دهی داده نظير sqlDataSource و ObjectDataSource در اختيار پياده كنندگان قرار گرفت .
ويژگی هائی از فريمورك كه می تواند برای پياده كنندگان برنامه های ASP. NET نيز مفيد واقع شود : اين نوع از ويژگی ها صرفا" مختص ASP. NET نمی باشند و از آنها می توان در مواردی ديگر نظير WinForm نيز استفاده كرد . از پتانسيل های فوق عموما" در ASP. NET استفاده می گردد . به عنوان نمونه ، فريمورك 2 ، نوع های anonymous و Generics را معرفی و وضعيت Dataset را بهبود بخشيد .
هيچكدام از موارد فوق مختص ASP. NET نمی باشند ، ولی اغلب توسط پياده كنندگان ASP. NET استفاده می گردند .
ويژگی هائی از فريمورك كه توسط پياده كنندگان ASP. NET استفاده نمی گردد . فريمورك دات نت مشتمل بر تعداد زيادی از كلاس هائی است كه به ندرت و يا هرگر توسط پياده كنندگان ASP. NET استفاده نمی گردد نظير كلاس های موجود در System.Windows.Forms .
در ادامه به بررسی دو گروه اوليه خواهيم پرداخت .
در ابتدا لازم است به اين موضوع اشاره نمائيم كه شما می توانيد يك پوستر از فريمورك 5 / 3 با فرمت pdf را از اين محل (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fdownload.microsoft .com%2Fdownload%2F4%2Fa%2F3%2F4a3c7c55-84ab-4588-84a4-f96424a7d82d%2FNET35_Namespaces_Poster_LORES.pdf) دريافت نمائيد . علاوه بر وجود تعداد زيادی از كلاس ها و namespace در فريمورك دات نت ، اين پوستر دو چيز را كاملا" شفاف نشان می دهد : اين كه چه ميزان از فريمورك دات نت با ASP.NET مرتبط نيست و امكانات و ويژگی های جديد اضافه شده به هر يك از نسخه های فريمورك دات نت .
شكل 2 ويژگی های ASP. NET 2.0 و قابليت های جديد اضافه شده در هر يك از نسخه های 3 و 5 / 3 را نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-1.jpg
شكل 2 : امكانات اضافه شده به هر يك از نسخه های فريمورك دات نت
برای كسب اطلاعات بيشتر در خصوص اين موضوع كه چگونه دات نت 5 / 3 ، اسمبلی های اضافه و قابليت های جديدی را به دات نت 2 اضافه كرده است ، به وبلاگ Daniel Moth (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2F) مبحث "فريمورك 5 / 3 (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2FBlog%2F2007%2F06%2Fnet-framework-35.html) " مراجعه نمائيد .
در وبلاگ فوق و مبحث " Visual Studio 2008 Stack (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.danielmoth.com %2FBlog%2F2007%2F06%2Fvisual-studio-2008-stack.html)" ، يك تصوير شفاف از تغييرات انجام شده در ويژوال استوديو ، زبان های برنامه نويسی ، كتابخانه های فريمورك و CLR نيز ارائه شده است .
مروری بر ويژگی هائی از فريمورك كه مختص پياده كنندگان برنامه های ASP.NET ارائه شده اند
ASP.NET 3.5 يك نسخه جديد و ارتقاء يافته نسبت به نسخه قبلی است كه سه ويژگی جديد زير در آن از ساير موارد مشهود تر است :
<LI dir=rtl>حمايت ذاتی از ASP.NET AJAX
<LI dir=rtl>كنترل ListView
كنترل DataPager
قبل از ASP.NET 3.5 ، لازم بود كه در ابتدا فريمورك ASP.NET AJAX (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Fajax%2F) مايكروسافت دانلود و بر روی سيستم به عنوان يك الحاقيه نصب گردد . در ASP.NET 3.5 ، كلاس های مرتبط با AJAX مستقيما" در فريمورك دات نت ساخته شده اند تا امكان ساخت سريع و آسان برنامه های وب مرتبط با AJAX در برنامه های ASP.NET فراهم گردد .
ASP.NET 2.0 به همراه خود كنترل های داده جديدی نظير Gridview، DetailsView و FormView را معرفی كرد . كنترل GridView ، ليستی از ركوردها را در يك جدول نمايش می دهد . كنترل های DetailsView و FormView در هر لحظه يك ركورد را نمايش می هند . كنترل DetailView در يك ساختار نمايشی مشابه جدول و FormView در يك لی اوت متاثر از يك تمپليت خاص ، اطلاعات خود را نمايش می دهند .
ListView در واقع يك نسخه ارتقاء يافته از كنترل های DataList و Repeater است كه می تواند چندين ركورد را به همراه قابليت هائی نظير Gridview نمايش دهد . با اين تفاوت كه بكارگيری تمپليت ها با انعطاف بيشتری انجام می گردد .
كنترل DataPager به صورت يك نوع اينترفيس free-standing paging كار می كند . به عبارت ديگر كنترل فوق ، يك رابط كاربر paging را تفسير ( به عنوان نمونه صفحه بعد ، قبل ، دكمه آخر ) و با يك كنترل وب داده مرتبط می شود . كنترل فوق صرفا" با آن گروه از كنترل هائی كار می كند كه IPageableItemContainer interface را پياده سازی كرده باشند كه صرفا" ( در حال حاضر ) در كنترل ListView وجود دارد .
برای آشنائی بيشتر با نحوه استفاده از كنترل های ListView و DataPager می توانيد به وبلاگ Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2F) مبحث " كنترل ListView (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F08%2F10%2Fthe-asp-listview-control-part-1-building-a-product-listing-page-with-clean-css-ui.aspx)" مراجعه نمائيد. مايكروسافت نيز ويدئوهای جديدی (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2F) جهت آشنائی با نحوه استفاده از كنترل های ListView (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2Fvideo-225.aspx)و DataPager (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fasp.net%2Flearn%2F 3.5-videos%2Fvideo-221.aspx) ارائه كرده است .
مروری بر ويژگی هائی از فريمورك كه می تواند برای پياده كنندگان برنامه های ASP. NET نيز مفيد واقع شود
مهمترين ويژگی ارائه شده در نسخه شماره 5 / 3 فريمورك دات نت ، معرفی LINQ ( برگرفته شده از Language Integrated Query ) است . با استفاده از فناوری فوق ، می توان گرامری شبيه SQL را با استفاده از زبان های برنامه نويسی VB و #C نوشت تا پياده كنندگان بتوانند از داده در برنامه های خود استفاده نمايند .
به همراه ويژوال استوديو 2008 يك LINQ to SQL designer ارائه شده است كه به كمك آن می توان يك بانك اطلاعاتی را به عنوان يك LINQ به SQL object model مدل سازی كرد . پس از مدل سازی بانك اطلاعاتی ، می توان به سادگی كدهای مورد نظر خود را به منظور كار با داده نوشت .
كد زير نحوه بازيابی محصولات گروه Test از بانك اطلاعاتی نمونه Northwind را با گرامر مبتنی بر LINQ توسط VB و #C نشان می دهد ( كلاس NorthwindDataContext بر اساس مدل طراحی شده ، ايجاد شده است ) .
C#
NorthwindDataContext db = new NorthwindDataContext() ;
var Products = from p in db.Products
Where p.category.CategoryName == "Test"
select P; VB
Dim db AS New NorthwindDataContext Dim products = From p In db.products _
Where p.category.categoryName = "Test" _
Select p
LINQ ، به سادگی يك گرامر را جهت كار با داده تعريف می كند . همچنين ، ORMs (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fen.wikipedia.org%2 Fwiki%2FObject-relational_mapping)( برگرفته شده از Object Relational Mappers ) از قبل تعبيه شده ای وجود دارد كه فريمورك مرتبط را به منظور توليد عبارات LINQ ايجاد می نمايد تا بر روی يك بانك اطلاعاتی و يا XML كار كند .
Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2F) در چندين مقاله با عنوان " استفاده از LINQ برای پياده سازی SQL ORM (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F05%2F19%2Fusing-linq-to-sql-part-1.aspx)" به اين موضوع پرداخته است .
ويژوال استوديو 2008 از گرامر LINQ در زمان استفاده از آن به صورت full-IntelliSense حمايت می نمايد . گرامر LINQ از طريق امكانات جديد ارائه شده در فريمورك دات نت نظير خصلت های اتوماتيك ، متدهای extension و عبارات lambda ، امكان پذير می باشد . پرداختن به موارد فوق خارج از حوصله اين مقاله است .
مروری بر ويژگی های جديد ويژوال استوديو 2008
ويژوال استوديو 2008 امكانات متعددی را در جهت كمك به پياده كنندگان نظير بهبود محيط Designer ، امكانات پيشرفته ويرايش CSS و اشكال زدائی جاوا اسكريپت ارائه كرده است . در اين نسخه از ويژوال استوديو برای پياده سازی برنامه های وب می توان يكی از محيط های NET 2.0, NET 3.0 و يا NET 3.5 را انتخاب كرد . اين بدان معنی است كه شما می توانيد از ويژوال استوديو برای كار بر روی يك وب سايت پياده سازی شده با ASP.NET 2.0 نيز استفاده نمائيد . در ادامه مروری سريع خواهيم داشت به هر يك از موارد فوق .
در نسخه قبلی ويژوال استوديو ، پياده كنندگان می توانستند از Designer و يا Source view در زمان ويرايش عناصر ويژوال در يك صفحه ASP.NET استفاده نمايند . محيط Designer يك نمايش WYSISYG (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fen.wikipedia.org%2 Fwiki%2FWYSIWYG)از صفحه را نمايش می دهد . در Source view ، كدهای markup مربوط به كنترل ها نمايش داده می شود . در ويژوال استوديو 2008 ، يك ويژگی جديد با نام Split screen ارائه شده است كه توسط آن كدهای markup در يك pane و WYSIWYG در pane ديگر نمايش داده می شود . زمانی كه در مد split قرار می گيريم ، همزمان با اضافه كردن محتويات به Designer ، بطور اتوماتيك كدهای markup در Source view بهنگام می گردند( متاسفانه عكس اين حالت درست نيست ) . اگر شما markup جديدی را بطور دستی در Source view درج نمائيد ، مجبور خواهيد بود كه صفحه را save و يا دكمه refresh را كليك نمائيد تا Designer view نيز بهنگام گردد .
شكل 3 ، Split screen را در ويژوال استوديو 2008 نشان می دهد .
http://www.srco.ir/Articles/images/vs2008-2.jpg
شكل 3 : Split screen در ويژوال استوديو 2008
همزمان با افزايش تعهد مايكروسافت به AJAX ، ويژوال استوديو 2008 امكانات حمايتی بهتری را در ارتباط با جاوا اسكريپت ارائه كرده است . امكانات زمان طراحی و اشكال زدائی بطور كامل بهبود يافته اند . زمانی كه از طريق source view اقدام به نوشتن كدهای جاوا اسكريپت می نمائيد ، امكانات و قابليت های IntelliSense مشابه در زمان نوشتن كدهای سمت سرويس دهنده در اختيار شما گذاشته می شود . اين شامل حمايت از كدهای جاوا اسكريپت inline و اسكريپت هائی است كه از طريق فايل های جاوا اسكريپت خارجی به آنها مراجعه می گردد .
( دستيابی به فايل های اسكريپت از طريق گرامری مشابه <script language="javascript" src="fileName"> </script> امكان پذير است ) .
Scott Guthrie در وبلاگ خود و با عنوان VS 2008 JavaScript IntelliSense (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F06%2F21%2Fvs-2008-javascript-intellisense.aspx) به اين موضوع اشاره كرده است كه پياده كنندگان می توانيد حتی تذكرات هوشمند را به توابع جاوا اسكريپت و با استفاده از توضيحات XML اضافه نمائيد . وی همچنين در وبلاگ خود به بررسی قابليت های اشكال زدائی جاوا اسكريپت (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F07%2F19%2Fvs-2008-javascript-debugging.aspx) پرداخته است .
اخيرا" (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.internetnews.c om%2Fdev-news%2Farticle.php%2F3703261)شركت مايكروسافت عنوان نموده است كه به زودی كد فريمورك دات نت را تحت مجوز MS-RL (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fwww.microsoft.com% 2Fresources%2Fsharedsource%2Flicensingbasics%2Fref erencelicense.mspx)در اختيار عموم قرار خواهد داد . نكته جالب مرتبط با اين رويداد برای پياده كنندگانی كه از ويژوال استوديو استفاده می نمايند در اين است كه آنها می توانند ويژوال استوديو 2008 را به يك URL اشاره دهند كه شامل نمادهای اشكال زدائی برای فريمورك دات نت است . بدين ترتيب ، در زمان اشكال زدائی امكان ورود به كد فريمورك دات نت فراهم می گردد . اين موضوع می تواند به پياده كنندگان كمك نمايد تا شناخت بهتر و عميق تری نسبت به نحوه عملكرد فريمورك دات نت پيدا نمايند .
هنوز مشخص نشده است ( در زمان نوشتن اين مطلب ) كه آيا مايكروسافت نمادهای اشكال زدائی را از طريق يك URL عمومی در دسترس قرار خواهد داد . پس از عموميت URL ، پياده كنندگان می توانند از طريق ويژوال استوديو به آن اشاره نمايند . جهت كسب اطلاعات بيشتر به وبلاگ Scott Guthrie (http://forum.patoghu.com/redirector.php?url=http%3A%2F%2Fweblogs.asp.net%2F scottgu%2Farchive%2F2007%2F10%2F03%2Freleasing-the-source-code-for-the-net-framework-libraries.aspx) مراجعه نمائيد .
خلاصه
نسخه جديد ويژوال استوديو و ASP.NET ويژگی های جديد و جالبی را نسبت به نسخه های قبلی در اختيار پياده كنندگان قرار می دهد. در ASP.NET 3.5 ، مايكروسافت فريمورك ASP.NET AJAX را به عنوان بخش لاينفك فريمورك دات نت معرفی كرده است و به همراه ساير كنترل ها ، كنترل های جديد ListView و DataPager را ارائه كرده است .
در ويژوال استوديو 2008 ، تغييرات متعددی نظير افزايش توانمندی پياده كنندگان جهت طراحی رابط كاربر ( يك محيط طراحی قوی تر ) ، بهبود قابليت های ويرايش CSS ، حمايت از اشكال زدائی و تايپ هوشمند جاوا اسكريپت ، قابليت انتخاب نسخه فريمورك برای پياده سازی برنامه وب ارائه شده است