آكادمي برنامه نويسان مشهد آكادمي برنامه نويسان مشهد .

آكادمي برنامه نويسان مشهد

دسترسي به داده ها در ASP.Net MVC با استفاده از Entity Framework و HTML Helper ها

در اين پست از وب سايت آكادمي برنامه نويسان به معرفي ASP NET MVC خواهيم پرداخت و خواهيم گفت  ASP.NET MVC چيست و چه كاربردي هايي دارد .

معرفي ASP NET MVC

Model-View-Controller يا MVC الگويي است كه يك برنامه كاربردي را به سه بخش اصلي زير تفكيك مي كند :

  1. Model
  2. View
  3. Controller

چهار چوب ASP.NET MVC يك جايگزين ASP.NET Web Form ها براي ساخت برنامه هاي تحت وب است. چهار چوب ASP.NET MVC سبك بوده و قابليت تست پذيري بالايي دارد و همچنين يكسري از ويژگي هاي ASP.NET Form  را مانند master page ها ، سيستم هاي احراز هويت داراست. فريمورك MVC  در اسمبلي System.Web.Mvc تعريف شده است و كنترل كاملي برروي JavaScript،HTML و CSS دارد. همچنين استفاده از آن براي ساخت برنامه هاي با مقياس بزرگ كه تيم هاي مختلفي برروي آن كار مي كنند پيشنهاد مي شود.

الگوي طراحي MVC

معرفي asp net mvc

مزاياي يك برنامه تحت وب  MVC

فريمورك ASP.NET MVC داراي مزاياي زير است :

  • مديريت ساده  پيچيدگي ها  به وسيله تقسيم كردن برنامه به قسمت هاي Model ، View و Controller
  • عدم استفاده از view state و فرم هاي سروري
  • كنترل كامل برروي HTML، JavaScripts و CSS
  • پشتيباني بهتر از آزمون TTD
  • به خوبي براي پروژه هايي كه به وسيله تيم هاي بزرگ پشتيباني مي شود كار مي كند و همچنين مناسب براي طراحان وبي است كه نياز زيادي به كنترل كامل برروي رفتار هاي برنامه دارند.
  • به صورت پيش فرض از احراز هويت Facebook  و google  پشتيباني مي كند.
  • مديريت ساده برنامه هاي بزرگ به وسيله تقسيم بندي آنها با Area ها.

فضاهاي نام  ASP.NET MVC

  • System.Web.Mvc
    شامل كلاس ها و اينترفيس هايي است كه به وسيله الگوي MVC در ASP.NET  پشتيباني مي شود.اين فضاي نام شامل كلاس هايي مانند controller ها ، action result ها، view ها ،  partial view ها ، model binder هاست.
  • System.Web.Mvc.Ajax
    شامل كلاس هايي است كه اسكريپت هاي Ajax  را  در يك برنامه ASP.NET MVC پشتيباني مي كند.
  • System.Web.Mvc.Async
    شامل كلاس ها و اينترفيس هايي جهت پشتيباني يك برنامه MVC  از  اعمال غيرهم زمان .
  • System.Web.Mvc.Html
    شامل كلاس هايي است كه كمك  به رندر كردن كنترل هاي HTML  در يك برنامه MVC  مي كند. كلاس هاي موجود در اين فضاي نام پشتيباني ميكنند از فرم ها ، كنترل هاي ورودي ، لينك ها ،partial view ها و اعتبار سنجي.

 

تفاوت هاي بين ASP.NET MVC  و Web Form ها

در اين قسمت معرفي ASP NET MVC به تفاوت هاي بين ASP.NET MVC  و Web Form ها خواهيم پرداخت :

ASP.NET WEB FORMASP.NET MVC
Web Form ها از تكنيك Code behind براي تقسيم يك صفحه .aspx دو بخش يكي براي نمايش و ديگري فايل هاي كد aspx.cs/aspx.vb استفاده مي كنند يك برنامه وب MVC از الگوي طراحي جهت مديريت برنامه به 3 بخش Model ، View و Controller استفاده ميكند.
ASP.NET Web Form شامل كنترل هاي سروري است ASP.NET MVC داراي html helper هاست
ASP.NET Web Form از View state براي مديريت وضعيت سمت كاربر پشتيباني مي كند. ASP.NET MVC از View State پشتيباني نمي كند
كنترل محدودي برروي HTML و JavaScript و CSS فراهم مي كند كنترل كاملي برروي JavaScript ، HTML و CSS فراهم مي كند
مناسب براي برنامه هايي با مقياس كوچك و تيم هايي برنامه نويسي با تعداد كم مناسب براي كار برروي برنامه هايي با مقياس بزرگ و چندين تيم برنامه نويسي

 

ساختار برنامه ASP.NET MVC

ساختار يك برنامه ASP.NET MVC حداقل به سه پوشه View ، Model  و Controller تقسيم مي شود همچنين پوشه هاي ديگري براي نگهداري فايل هاي اسكريپت و داده و موارد ديگر وجود دارد.

 ASP.NET MVC چيست

  1. Model
    ازمدل براي نگهداري داده كلاس هاي  ايجاد شده به وسيله Linq to SQL  يا  Entity Framework ، و يا ارجاع به سرويس هايي مانند WCF  استفاده مي شود . در نهايت استفاده  از مدل براي ارائه داده ها به View است.
  2. View
    پوشه View براي نگهداري View ها و يا Patial View ها استفاده مي شود هر View  عمل خاصي را بر اساس آنچه كلاس كنترلر به آن محول كرده انجام مي دهند. معمولا پوشه View  شامل پوشه اي با نام Shared مي شود كه صفحات و يوزر كنترل هايي كه به وسيله بيشتر كنترلر ها استفاده مي شود در آن قرار دارد.
  3. Controller
    پوشه كنترلر مجموعه اي از كلاس ها را شامل مي شود كه هر كلاس فرزند  System.Web.Mvc.Controller است.يك كلاس كنترلر تنها شامل متد ها يي مي شود كه به آنها متدهاي Action  گفته مي شود. متدهاي Action  مسئول برگرداندن يك Patial View , View ، محتوا ، داده Json  و موارد ديگر است.

اكشن ها

اكشن ها براي نوشتن كدها براي انجام كاري خاص استفاده مي شوند همچنين مسئوليت بازگشت دادن مواردي براي كاربر مانند يك صفحه ويا يوزر كنترل را بر عهده دارند. هر اكشن  شامل يكي از دو نوع در خواست HTTP  زير مي شود:

  1. [HttpGet] اكشن ها ي HttpGet براي اجراي درخواست هايي كه مستقيما از كاربر مي رسد و يا به عبارتي درخواست ها براي اولين بار  به وسيله متد اكشن دريافت مي شود.
  2.  [HttpPost]
    اكشن هاي [HttpPost] تنها زماني فراخواني مي شوند كه قبلا در سمت كاربري بازديد شده اند و كاربر يك فرم HTML را به وسيله دكمه Submit  ارسال مي كند همچنين وقتي كه اين نوع اكشن فراخواني مي شود در آن مي توان همه مقادير كنترل ها را به وسيله   FormCollection از فرم HTML  بدست آورد. يك متد اكشن مي تواند انواع مختلفي از اطلاعات و مقادير را براي كاربر برگرداند. ما مي توانيم انواع مختلفي را براي كاربر از يك متد اكشن برگردانيم اما بيشتر از ActionResult استفاده مي كنيم زيرا   ActionResult والد انواع مخلتف است.

 

Area  ها در ASP.NET MVC

در نسخه ASP.NET MVC 2.0 مايكروسافت ويژگي جديدي با نام Area ها را معرفي كرد. Area ها براي تقسيم بندي يا مجزا كردن يك برنامه بزرگ به چندين برنامه MVC استفاده مي شود . به عنوان نمونه :

 

زمانيكه شما يك area  را به پروژه اضافه مي كنيد يك route (مسير) براي area  در فايل AreaRegistrationتعريف مي شود.اين route درخواست هاي رسيده از URL  به يك area  هدايت مي كند.

 

كلاس آموزش طراحي وب سايت در مشهد با ASP.NET MVC

 دوره آموزش طراحي وب


برچسب: ،
امتیاز:
 
بازدید:
+ نوشته شده: ۳۰ مرداد ۱۳۹۷ساعت: ۰۷:۲۶:۱۴ توسط:developer موضوع:

ارسال نظر
نام :
ایمیل :
سایت :
آواتار :
پیام :
خصوصی :
کد امنیتی :