## **نظرة عامة**
CoursesCenter هو موقع ويب متكامل لتقديم وإدارة الدورات التعليمية، تم تطويره باستخدام أحدث تقنيات Microsoft .NET 8.0. يعمل الموقع كمنصة مركزية لعرض وتنظيم الدورات التعليمية المختلفة.
## **التقنيات المستخدمة**
### **البنية الأساسية:**
- **.NET 8.0** - أحدث إصدار من إطار عمل ASP.NET Core
- **ASP.NET Core MVC** - لبناء تطبيقات الويب بطريقة Model-View-Controller
### **قاعدة البيانات:**
- **Microsoft SQL Server** - نظام إدارة قواعد البيانات العلائقية
- **Entity Framework Core 8.0.10** - ORM (Object-Relational Mapping) لإدارة قواعد البيانات
- **SQL Server Provider** - للاتصال بقاعدة بيانات SQL Server
### **واجهة المستخدم:**
- **Blazor QuickGrid** - لعرض البيانات بشكل تفاعلي وجدولي (الإصدار 8.0.11)
- **Razor Pages** - لإنشاء صفحات الويب الديناميكية
### **أدوات التطوير:**
- **Entity Framework Core Tools** - لأتمتة عمليات قاعدة البيانات
- **Scaffolding Tools** - لتوليد الكود تلقائياً (الإصدار 8.0.7)
## **الهيكل التنظيمي للمشروع**
### **1. إعدادات التطبيق:**
- **appsettings.json** - يحتوي على إعدادات الاتصال بقاعدة البيانات وسلاسل الربط
- **appsettings.Development.json** - إعدادات خاصة ببيئة التطوير
### **2. تكوين المشروع:**
- **CoursesCenter.csproj** - ملف تعريف المشروع وإدارة الحزم
### **3. نقطة البداية:**
- **Program.cs** - ملف تهيئة التطبيق وإعداد الخدمات والـ Middleware
## **المميزات الرئيسية:**
### **1. إدارة قاعدة البيانات:**
- اتصال آمن مع SQL Server باستخدام Trusted Connection
- دعم شهادات SSL/TLS لقاعدة البيانات
- تكوين كامل لـ Entity Framework Core
### **2. الأمان:**
- HTTPS إلزامي في بيئة الإنتاج
- سياسة HSTS (HTTP Strict Transport Security)
- فصل إعدادات التطوير عن الإنتاج
### **3. الأداء:**
- تحميل الملفات الثابتة بشكل فعال
- توجيه طلبات URL بطريقة فعالة
### **4. سهولة الصيانة:**
- هيكل منظم وفق نمط MVC
- كود نظيف وسهل القراءة
- توثيق شامل للأخطاء في بيئة الإنتاج
## **بيئة التشغيل:**
### **متطلبات النظام:**
- .NET 8.0 Runtime
- SQL Server (أي إصدار)
- نظام التشغيل: Windows/Linux/macOS
### **إعدادات الاتصال بقاعدة البيانات:**
- اسم قاعدة البيانات: `CourseCenterdb`
- المصدر: السيرفر المحلي (`.`)
- المصادقة: Windows Authentication
- SSL: مفعل (Trust Server Certificate=True)
## **الوظائف المتوقعة:**
1. **إدارة الدورات التعليمية**
2. **عرض المحتوى التعليمي**
3. **إدارة المستخدمين والصلاحيات**
4. **واجهة إدارية للمحتوى**
5. **أنظمة تقارير وإحصائيات**
## **قابلية التوسع:**
- هيكل مرن يسمح بإضافة وحدات جديدة بسهولة
- دعم لتقنيات حديثة مثل Blazor Components
- إمكانية التكامل مع أنظمة خارجية
## **ملاحظات تقنية:**
- المشروع جاهز للعمل في بيئة التطوير والإنتاج
- يدعم أحدث ممارسات أمن الويب
- مصمم وفق معايير Microsoft لأفضل الممارسات
- سهل النشر على خوادم مختلفة
هذا المشروع يمثل أساساً قوياً لمنصة تعليمية متكاملة يمكن تطويرها وإضافة المزيد من الميزات حسب الاحتياجات المستقبلية.