مستخدم ضيف
انضم إلينا اليوم!
تسجيل الدخول التسجيل
الرئيسية
الدورات
المدونة
Veya ai chat
المميزات
حول
الاتصال
الخصوصية
الشروط
الإعدادات
الإنجليزية العربية
الدعم
مساعدة
Lavidya - AI Learning Platform
  • الرئيسية
  • الدورات
  • المدونة
  • Veya ai chat
  • المميزات
  • حول
  • الاتصال
  • الخصوصية
  • الشروط
    • الإنجليزية
    • العربية

مقال المدونة

  • الرئيسية
  • الرئيسية
  • المدونة
  • القديم ضد الجديد: فهم الـ Pipe...

القديم ضد الجديد: فهم الـ Pipeline في ASP.NET Framework و ASP.NET Core

أنا جاي أشرح ببساطة الفرق بين HTTP Request Lifecycle في ASP.NET Framework القديم وASP.NET Core الجديد، والتغييرات الكبيرة اللي حصلت في الـ Pipeline من زمان لحد دلوقتي.
الشرح ده هيخليك تفهم ازاي الطلبات (Requests) بتمشي جوه السيستم وليه ASP.NET Core بقى اختيار أفضل للمطورين دلوقتي.


أولًا: دورة حياة HTTP Request في الإصدار القديم (ASP.NET Framework)

لما العميل يبعت Request زي /Employee/GetAll بيحصل الآتي:

1️⃣ استقبال الريكوست
الـ Web Server (IIS) بيستقبل الريكوست أول حاجة، والـ Pipeline كله جوه IIS، مش جوه الـ Web Application نفسها.

2️⃣ دخول الريكوست للـ Pipeline
الريكوست بيكون معاه حاجتين منفصلتين: HttpRequest و HttpResponse، والاتنين مربوطين بـ System.Web.HttpContext.
هنا المشكلة: الـ Context ضخم جدًا ويحمل حاجات مش محتاجها التطبيق.

3️⃣ المرور على كل Modules / Middlewares
الريكوست لازم يعدّي على كل الـ Modules مهما كان عددهم.

  • هنا ما فيش مرونة حقيقية في التحكم في ترتيبهم.

4️⃣ Routing
يوصل للـ Routing Module ويستخرج:

  • Controller Name

  • Action Name

5️⃣ تحديد الـ Controller والـ Action
يوصل للـ MapControllerRoute اللي بيحوّل الريكوست للـ Controller والـ Action المناسب.

6️⃣ التحكم جوه الـ Controller حسب نوع التطبيق

لو التطبيق MVC:

  • نجيب البيانات من قاعدة البيانات

  • نملأ الـ ViewModel أو الـ Model

  • نبعت الـ Model للـ View

  • نعمل Render للـ View جوه الـ Layout

  • نولد الصفحة النهائية HTML

  • نرجع HTML كـ Response

لو التطبيق Web API:

  • نجيب البيانات من قاعدة البيانات

  • نملأ الـ DTO أو Model

  • نحول النتيجة لـ JSON

  • نرجع JSON Response

7️⃣ الرد بيرجع للـ Pipeline
وبعدين يوصل للـ Browser.


❌ عيوب الإصدار القديم:

  • معتمد على IIS (مش Cross-Platform)

  • HttpContext ضخم وصعب جدًا الاختبار (Testing)

  • Pipeline ثابت ومش مرن

  • أداء أقل (Performance)

  • Architecture تقيل ومركّب


ثانيًا: دورة حياة HTTP Request في الإصدار الجديد (ASP.NET Core)

1️⃣ استقبال الريكوست
الـ Web Server (Kestrel أو IIS) بيستقبل الريكوست ويدخله جوه التطبيق نفسه.

  • هنا الفرق الكبير: الـ Pipeline بقى جوه الـ Application، وانت اللي بتتحكم في ترتيب كل Middleware.

2️⃣ دخول الريكوست للـ Pipeline داخل Program.cs
الـ Pipeline modular ومرن.

3️⃣ HttpContext جديد
الريكوست بيمشي مع HttpContext واحد خفيف، فيه HttpRequest و HttpResponse، يعني Request + Response جزء من Context واحد نضيف.

4️⃣ المرور على Middlwares حسب اختيارك
انت اللي تحدد مين قبل مين، ومين يتحذف أو يتضاف.

5️⃣ الوصول للـ Controller والـ Action
ونفس الخطوات المعروفة:

  • Get Data → Fill Model → Render View أو Return JSON

6️⃣ الرد بيرجع للـ Pipeline بالعكس
وبعدين يوصل للـ Browser.


✔ مميزات الإصدار الجديد:

  • Cross-Platform — شغال على Linux / Windows / macOS

  • Lightweight HttpContext — سهل تعمل عليه Testing

  • Flexible & Modular Pipeline — انت اللي تحدد ترتيب الـ Middleware

  • High Performance — أسرع وأخف في استهلاك الـ Memory

  • Clean & Modern Architecture — مناسب للتطبيقات السحابية (Cloud Apps)


الخلاصة 🎯

الفرق الأساسي إن ASP.NET Core جاب لنا:

  • Pipeline مرن، Modular، وسهل التحكم فيه

  • Context خفيف وسهل الاختبار

  • أداء أعلى وبنية حديثة

  • Cross-platform

باختصار، لو حابب تطبيقات أسرع، مرنة، قابلة للتطوير والاختبار بسهولة، ASP.NET Core هو الاختيار الحالي للمطورين.

معلومات المقال

القديم ضد الجديد: فهم الـ Pipeline في ASP.NET Framework و ASP.NET Core
  • الفئة: علوم الحاسوب
  • منشور: Jan 25, 2026
  • وقت القراءة: 1 دقيقة
  • الكاتب: Shaker

هل كان هذا مفيداً؟

مشاركة المقال

شارك هذا المقال مع الآخرين

مقالات ذات صلة

خلف الكواليس: ازاي الـ Routing شغال في PHP Native
خلف الكواليس: ازاي الـ Routing شغال في PHP Native

Feb 03, 2026

إزاي المنصات الكبيرة بتحمي فيديوهاتها؟
إزاي المنصات الكبيرة بتحمي فيديوهاتها؟

Jan 26, 2026

إزاي تتحكم في استخدام الـ Guest Users حتى لو بيستخدموا VPN أو Incognito
إزاي تتحكم في استخدام الـ Guest Users حتى لو بيستخدموا VPN أ...

Jan 26, 2026

Lavidya - AI Learning Platform

"لافيديا جعلت التعلم سهلاً وممتعاً. ذكاء اصطناعي يفهم التعليم حقاً."

حقوق النشر © 2026 Lavidya. جميع الحقوق محفوظة.