.NET Core - فهم الـ MVC والـ Razor Pages

.NET Core - فهم الـ MVC والـ Razor Pages

في تطبيقات ASP.NET Core، يوجد طريقتان شائعتان لبناء تطبيقات الويب: MVC وRazor Pages. كلاهما قوي، ولكن كل واحد منهما له أسلوب مختلف في التنظيم والتعامل مع الصفحات.


1. ما هو MVC؟

MVC اختصار لـ: Model - View - Controller، وهو نمط تصميم يُستخدم لفصل منطق التطبيق إلى ثلاث طبقات:

  • Model: يمثل البيانات والقواعد (مثل الكلاسات المرتبطة بقاعدة البيانات).
  • View: يمثل واجهة المستخدم (صفحات HTML وRazor).
  • Controller: يحتوي على المنطق الذي يربط بين الـ Model والـ View.

مثال على كود Controller بسيط:


public class HomeController : Controller
{
    public IActionResult Index()
    {
        return View();
    }
}

الـ View المرتبط يكون موجودًا في: /Views/Home/Index.cshtml


2. ما هي Razor Pages؟

تم تقديم Razor Pages في ASP.NET Core كطريقة أبسط من MVC، وتناسب المشاريع الصغيرة أو المتوسطة. الصفحة الواحدة تحتوي على منطق المعالجة والواجهة معًا، مما يسهل التنظيم.

مثال على Razor Page:


public class IndexModel : PageModel
{
    public void OnGet()
    {
        // تنفيذ عند تحميل الصفحة
    }
}

ملف الصفحة يكون باسم Index.cshtml وموجود في مجلد /Pages.

مثال على واجهة الصفحة:


@page
@model IndexModel

<h2>مرحبًا بك في Razor Pages!</h2>

3. متى أستخدم كل واحد؟

  • استخدم MVC: عندما تحتاج إلى تنظيم كبير، وتطبيق متعدد الصفحات والأقسام (مثال: موقع تجارة إلكترونية).
  • استخدم Razor Pages: عند بناء تطبيق بسيط أو صفحات مستقلة (مثال: لوحة تحكم أو فورم إدخال بيانات).

خلاصة

كل من MVC وRazor Pages يوفران طرق قوية لبناء تطبيقات ويب باستخدام ASP.NET Core. اختيارك يعتمد على طبيعة المشروع وتنظيمه. 

تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework