ASP.NET MVC

ASP.NET MVC هو إطار عمل لتطبيقات الويب طورته مايكروسوفت، ويُطبّق نمط MVC ( نموذج-عرض-متحكم ). لم يعد قيد التطوير النشط . وهو برنامج مفتوح المصدر ، باستثناء مكون ASP.NET Web Forms، الذي يُعدّ ملكية خاصة .

تم إصدار ASP.NET Core لاحقًا، والذي وحّد ASP.NET وASP.NET MVC وASP.NET Web API و ASP.NET Web Pages (منصة تستخدم صفحات Razor فقط ). تم التخلي عن MVC 6 بسبب Core، ومن غير المتوقع إصداره. من المخطط حاليًا دمج Core في ".NET 5". [ 4 ]

تتضمن بعض المواقع المعروفة التي تستخدم ASP.NET MVC موقع Stack Overflow ، [ 5 ] ومايكروسوفت ، وGoDaddy، و Ancestry.com . [ 6 ]

خلفية

يُمكّن نموذج ASP.NET MVC، المبني على ASP.NET ، مطوري البرامج من بناء تطبيقات الويب من خلال ثلاثة أدوار رئيسية: النموذج (Modelوالعرض (View) ، والمتحكم (Controller) . ويُعرّف نموذج MVC تطبيقات الويب بثلاث طبقات منطقية.

  • النموذج (طبقة الأعمال)
  • عرض (طبقة العرض)
  • وحدة التحكم (التحكم في المدخلات)

يمثل النموذج حالة جانب معين من التطبيق. يتولى المتحكم معالجة التفاعلات وتحديث النموذج ليعكس أي تغيير في حالة التطبيق، ثم يمرر المعلومات إلى واجهة المستخدم. تستقبل واجهة المستخدم المعلومات اللازمة من المتحكم وتُنشئ واجهة لعرض تلك المعلومات. [ 7 ]

في أبريل 2009، تم إصدار شفرة المصدر لـ ASP.NET MVC بموجب رخصة مايكروسوفت العامة (MS-PL). [ 8 ]

إطار عمل ASP.NET MVC هو إطار عمل خفيف الوزن وقابل للاختبار بدرجة عالية، وهو مُدمج مع ميزات ASP.NET الحالية. من بين هذه الميزات المُدمجة الصفحات الرئيسية والمصادقة القائمة على العضوية. يُعرَّف إطار عمل MVC في تجميعة System.Web.Mvc.

يقوم إطار عمل ASP.NET MVC بربط النماذج والعروض ووحدات التحكم باستخدام عقود قائمة على الواجهات ، مما يسمح باختبار كل مكون بشكل مستقل.

إصدار رخصة أباتشي 2.0

في مارس 2012، أعلن سكوت غوثري على مدونته أن مايكروسوفت قد أصدرت جزءًا من حزمة تطبيقات الويب الخاصة بها (بما في ذلك ASP.NET MVC و Razor وWeb API) بموجب ترخيص مفتوح المصدر ( ترخيص أباتشي 2.0 ). [ 11 ]

وكتب غوثري أن "القيام بذلك سيمكن من نموذج تطوير أكثر انفتاحًا حيث سيتمكن كل فرد في المجتمع من المشاركة وتقديم ملاحظات حول عمليات التحقق من التعليمات البرمجية وإصلاح الأخطاء وتطوير الميزات الجديدة وبناء المنتجات واختبارها بشكل يومي باستخدام أحدث إصدار من التعليمات البرمجية المصدرية والاختبارات".

يوجد الآن كود المصدر على CodePlex . لم يتم تضمين ASP.NET Web Forms في هذه المبادرة لأسباب مختلفة. [ 12 ]

سجل الإصدارات

سجل الإصدارات
تاريخإصدار
10 ديسمبر 2007ASP.NET MVC CTP
13 مارس 2009ASP.NET MVC 1.0 [ 13 ]
16 ديسمبر 2009ASP.NET MVC 2 RC [ 14 ]
4 فبراير 2010ASP.NET MVC 2 RC 2 [ 15 ]
10 مارس 2010ASP.NET MVC 2 [ 16 ]
6 أكتوبر 2010ASP.NET MVC 3 Beta [ 17 ]
9 نوفمبر 2010ASP.NET MVC 3 RC [ 17 ]
10 ديسمبر 2010ASP.NET MVC 3 RC 2 [ 18 ]
13 يناير 2011ASP.NET MVC 3 [ 19 ]
20 سبتمبر 2011معاينة مطوري ASP.NET MVC 4 [ 20 ]
15 فبراير 2012ASP.NET MVC 4 Beta [ 21 ]
31 مايو 2012ASP.NET MVC 4 RC [ 22 ]
15 أغسطس 2012ASP.NET MVC 4 [ 23 ]
30 مايو 2013ASP.NET MVC 4 4.0.30506.0 [ 24 ]
26 يونيو 2013معاينة ASP.NET MVC 5 [ 25 ]
23 أغسطس 2013ASP.NET MVC 5 RC 1 [ 26 ]
17 أكتوبر 2013ASP.NET MVC 5 [ 26 ]
17 يناير 2014ASP.NET MVC 5.1 [ 26 ]
10 فبراير 2014ASP.NET MVC 5.1.1 [ 26 ]
4 أبريل 2014ASP.NET MVC 5.1.2 [ 26 ]
22 يونيو 2014ASP.NET MVC 5.1.3 [ 26 ]
1 يوليو 2014ASP.NET MVC 5.2.0 [ 26 ]
28 أغسطس 2014ASP.NET MVC 5.2.2 [ 26 ]
9 فبراير 2015ASP.NET MVC 5.2.3 [ 26 ]
12 فبراير 2018ASP.NET MVC 5.2.4 [ 27 ]
2 مايو 2018ASP.NET MVC 5.2.5 [ 28 ]
11 مايو 2018ASP.NET MVC 5.2.6 [ 26 ]
29 نوفمبر 2018ASP.NET MVC 5.2.7 [ 26 ]
12 أبريل 2022ASP.NET MVC 5.2.8 [ 26 ]
31 مايو 2022ASP.NET MVC 5.2.9 [ 26 ]
23 أكتوبر 2023ASP.NET MVC 5.3.0 (الحالي)

هيكل المشروع

  • 📁 تطبيق
    • 📁 وحدات التحكم
      • 🗒️ PetController.cs
    • 📁 موديلات
      • 🗒️ PetViewModel.cs
    • 📁 المشاهدات
      • 📁 حيوان أليف
        • 📄 Create.cshtml
        • 📄 حذف.cshtml
        • 📄 Edit.cshtml
        • 📄 Index.cshtml

محركات العرض

محركات العرض المستخدمة في إطاري عمل ASP.NET MVC 3 وMVC 4 هي Razor وWeb Forms. [ 29 ] [ 30 ] كلا محركي العرض جزء من إطار عمل MVC 3. بشكل افتراضي، يستخدم محرك العرض في إطار عمل MVC صفحات Razor .cshtmlأو .vbhtmlWeb Forms .aspxلتصميم تخطيط صفحات واجهة المستخدم التي تُجمع عليها البيانات. مع ذلك، يمكن استخدام محركات عرض مختلفة. [ 31 ] بالإضافة إلى ذلك، وبدلاً من نموذج إعادة الإرسال الافتراضي لـ ASP.NET Web Forms، يتم توجيه أي تفاعلات إلى وحدات التحكم باستخدام آلية توجيه ASP.NET . يمكن ربط طرق العرض بعناوين URL مختلفة . [ 7 ]

محركات عرض أخرى:

  • تحتوي مكتبة MVCContrib على 8 محركات عرض بديلة. Brail وNDjango وNHaml وNVelocity وSharpTiles وSpark وStringTemplate وXSLT. [ 32 ]
    • يستخدم محرك عرض StringTemplate نسخة .NET من محرك قوالب Java، StringTemplate. [ 33 ]
    • Spark هو محرك عرض لإطارات عمل ASP.NET MVC (ومشروع Castle MonoRail). [ 34 ]
    • NDjango هو نسخة معدلة من لغة القوالب الخاصة بإطار عمل الويب Django إلى بيئة .NET. وهو مكتوب بلغة F# ويأتي مع إضافة Visual Studio تتضمن دعمًا كاملاً لخاصية Intellisense. [ 35 ]
  • Naked Objects for .NET هو تطبيق لنمط الكائنات العارية باستخدام ASP.NET MVC.

انظر أيضاً

مراجع

  1. "حزمة Nuget Microsoft.AspNet.Mvc" . تم الاطلاع عليها بتاريخ 10 يناير 2025 .
  2. "إصدارات MVC" . الموقع الرسمي لـ Microsoft ASP.NET . تم الاطلاع عليه بتاريخ 18 مايو 2016 .
  3. ريك أندرسون. "مقدمة إلى ASP.NET MVC 3 (VB)" . الموقع الرسمي لـ Microsoft ASP.NET . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  4. "تقديم .NET 5" . 6 مايو 2019.
  5. "بماذا تم بناء موقع Stack Overflow؟" . 21 سبتمبر 2008.
  6. "أفضل 10 مواقع ويب مكتوبة باستخدام ASP.NET MVC - DZone Web Dev" .
  7. 1 2 سكوت غوثري (15 أكتوبر 2007). "إطار عمل ASP.NET MVC" . مؤرشف من الأصل في 22 أكتوبر 2007. تم الاطلاع عليه في 23 أكتوبر 2007 .
  8. سكوت غوثري (2 أبريل 2009). "إصدار شفرة المصدر لـ ASP.NET MVC 1.0" . مؤرشف من الأصل في 3 أبريل 2009. تم الاطلاع عليه في 2 أبريل 2009 .
  9. كويرالا، شيفبراساد (27 سبتمبر 2014). "مقارنة أداء Webform مقابل MVC باستخدام اختبار تحميل لـ 25 مستخدمًا" . codeproject . تم الاطلاع عليه بتاريخ 27 سبتمبر 2014 .
  10. "ASP.NET MVC" . aspnet4.com . مؤرشف من الأصل في 4 أبريل 2014. تم الاطلاع عليه في 17 يناير 2015 .
  11. سكوت غوثري (28 مارس 2012). "ASP.NET MVC، وWeb API، وRazor، والمصادر المفتوحة" . تم الاطلاع عليه بتاريخ 29 مارس 2012 .
  12. سكوت هانسيلمان. "أصبحت ASP.NET MVC 4 و ASP.NET Web API و ASP.NET Web Pages v2 (Razor) الآن جميعها مفتوحة المصدر مع إمكانية المساهمة" . تم الاطلاع عليه بتاريخ 29 مارس 2012 .
  13. "قم بتنزيل ASP.NET MVC 1.0 من مركز تنزيل مايكروسوفت الرسمي" . مايكروسوفت . تم الاطلاع عليه بتاريخ 17 يناير 2015 .{{cite web}}: CS1 maint: deprecated archiveal service ( link )
  14. فيل هاك (16 ديسمبر 2009). "إصدار ASP.NET MVC 2 RC" . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  15. فيل هاك (4 فبراير 2010). "إصدار ASP.NET MVC 2 RC 2" . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  16. "قم بتنزيل ASP.NET MVC 2 RTM من مركز تنزيل Microsoft الرسمي" . Microsoft . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  17. 1 2 "ASP.NET MVC 3" . الموقع الرسمي لـ Microsoft ASP.NET . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  18. "الإعلان عن ASP.NET MVC 3 (الإصدار التجريبي الثاني)" . مدونة سكوت غو. weblogs.asp.net . 11 ديسمبر 2010. تاريخ الاطلاع: 17 يناير 2015 .
  19. "قم بتنزيل ASP.NET MVC 3 RTM من مركز تنزيل Microsoft الرسمي" . Microsoft . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  20. "ASP.NET" . CodePlex . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  21. "ASP.NET MVC 4" . الموقع الرسمي لـ Microsoft ASP.NET . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  22. "مدونات MSDN" . مايكروسوفت . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  23. "مدونات MSDN" . مايكروسوفت . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  24. "ملاحظات إصدار ASP.NET وأدوات الويب 2012.2" . الموقع الرسمي لـ Microsoft ASP.NET . مؤرشف من الأصل بتاريخ 10 يناير 2015. تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  25. فريق مايكروسوفت ASP.NET. "ملاحظات إصدار ASP.NET وأدوات الويب لـ Visual Studio 2013" . الموقع الرسمي لمايكروسوفت ASP.NET . تاريخ الاطلاع: 17 يناير 2015 .
  26. 1 2 3 4 5 6 7 8 9 10 11 12 13 "Microsoft ASP.NET MVC 5.2.2" . NuGet . تم الاطلاع عليه بتاريخ 17 يناير 2015 .
  27. "الإعلان عن ASP.NET MVC 5.2.4 وWeb API 5.2.4 وWeb Pages 3.2.4" . مايكروسوفت. 12 فبراير 2018. تاريخ الاطلاع: 14 مارس 2018 .
  28. "الإعلان عن ASP.NET MVC 5.2.5 وWeb API 5.2.5 وWeb Pages 3.2.5" . مايكروسوفت. 2 مايو 2018. تاريخ الاطلاع: 4 مايو 2018 .
  29. "مدونة سكوت غو - تقديم "ريزر" - محرك عرض جديد لـ ASP.NET" . asp.net . 3 يوليو 2010.
  30. "ASP.NET MVC 3" . الموقع الرسمي لـ Microsoft ASP.NET . 15 يونيو 2023.
  31. "دروس سكوت هانسيلمان المصورة لمعاينة ASP.NET MVC 2" . مؤرشف من الأصل بتاريخ 29 أكتوبر 2008. تم الاطلاع عليه بتاريخ 13 أكتوبر 2008 .
  32. MVCContrib
  33. "string-template-view-engine-mvc - ASP.Net MVC ViewEngine for StringTemplate - Google Project Hosting" . google.com .
  34. "محرك عرض سبارك" . كود بليكس . مؤرشف من الأصل في 11 يناير 2018. تم الاطلاع عليه في 15 مارس 2013 .
  35. "ndjango - تطبيق للغة قوالب Django على منصة .NET، باستخدام لغة F#. - استضافة مشاريع جوجل" . google.com .

للمزيد من القراءة

  • جون غالاوي، فيل هاك، براد ويلسون، وك. سكوت ألين، كتاب "ASP.NET MVC 3 الاحترافي" ، دار نشر Wrox، 2011، رقم ISBN 1-118-07658-3
  • جيفري باليرمو، جيمي بوغارد، إريك هيكستر، ماثيو هينز، وجيريمي سكينر، ASP.NET MVC 4 in Action ، منشورات مانينغ، 2012، ISBN 978-1617-29041-1
  • ستيفن ساندرسون، آدم فريمان، إطار عمل Pro ASP.NET MVC 3، الطبعة الثانية ، دار نشر Apress، 2011، رقم ISBN 1-4302-3404-0
  • جوناثان ماكراكين، تجربة قيادة ASP.NET MVC ، دار براغماتيك للنشر، 2010، رقم ISBN 1-934356-53-0
  • ستيفن والثر، إطار عمل ASP.NET MVC Unleashed ، سامز، 2009، ISBN 0-672-32998-0
  • أرنو ويل، تعلم ASP.NET MVC ، 2015، رقم ISBN 1-32648303-X
  • أندرو لوك، ASP.NET Core in Action ، منشورات مانينغ، 2018، رقم ISBN 978-1617-29461-7