Language Notice: View in English (الإنجليزية) |
هذه الأداة المبنية بلغة C# تُنشئ تلقائيًا حلًا كاملاً ببنية ثلاثية الطبقات بناءً على مخطط قاعدة بيانات SQL Server الخاص بك. تقوم الأداة بإنشاء أربعة مشاريع:
- DTO (كائنات نقل البيانات)
- DAL (طبقة الوصول إلى البيانات)
- BLL (طبقة المنطق التجاري)
- ConsoleApp (طبقة العرض)
يتضمن الحل المُنشأ عمليات CRUD كاملة لجميع الجداول وواجهة تعتمد على الكونسول للتفاعل مع قاعدة البيانات.
- 🚀 إنشاء تلقائي لمشاريع البنية ثلاثية الطبقات
- 🔍 قراءة مخطط قاعدة بيانات SQL Server (جداول، أعمدة، مفاتيح أساسية، مفاتيح أجنبية)
- 📦 إنشاء فئات DTO لجميع جداول قاعدة البيانات
- 💾 توليد تنفيذ نمط المستودع في DAL
- 🧠 إنشاء طبقة المنطق التجاري بطرق مؤقتة
- 💻 بناء تطبيق كونسول للتفاعل مع قاعدة البيانات
- 🔄 عمليات CRUD كاملة لجميع جداول قاعدة البيانات
- 📂 إنشاء ملف حل ومراجع المشاريع
- ⚙️ إنشاء تلقائي لملف App.config بسلسلة الاتصال
- .NET Framework 4.8
- مثيل SQL Server
- Visual Studio 2019 أو أحدث (لفتح الحل المُنشأ)
- استنسخ المستودع:
git clone https://github.com/MohmdAliMohmd/3-Tier-Architecture-Solution-Generator.git
- افتح الحل في Visual Studio
- قم ببناء الحل
- شغل الملف القابل للتنفيذ بعد التجميع
- قدم تفاصيل اتصال SQL Server:
- اسم الخادم
- اسم قاعدة البيانات
- طريقة المصادقة (Windows أو SQL Server)
- بيانات الاعتماد (إذا كنت تستخدم مصادقة SQL Server)
- حدد مسار الإخراج للحل المُنشأ
- ستنشئ الأداة بنية الحل الكاملة
- افتح الحل المُنشأ في Visual Studio
- أضف مراجع المشروع:
- ConsoleApp → BLL
- BLL → DAL
- DAL → DTO
- تحقق من سلسلة الاتصال في
ConsoleApp/App.config
الحل المُنشأ/
├── BLL/
│ ├── [اسم الجدول]Service.cs
│ └── BLL.csproj
├── DAL/
│ ├── [اسم الجدول]Repository.cs
│ └── DAL.csproj
├── DTO/
│ ├── [اسم الجدول]DTO.cs
│ └── DTO.csproj
├── ConsoleApp/
│ ├── App.config
│ ├── Program.cs
│ └── ConsoleApp.csproj
└── DatabaseSolution.sln
- إنشاء فئات
[اسم الجدول]DTOبخصائص تعكس أعمدة قاعدة البيانات - التعامل مع إمكانية القيم الفارغة بناءً على مخطط قاعدة البيانات
- مثال:
public class CustomerDTO { public int CustomerID { get; set; } public string Name { get; set; } public string Email { get; set; } public DateTime? RegistrationDate { get; set; } }
- إنشاء فئات مستودع بعمليات CRUD كاملة:
GetAll[اسم الجدول]s()Get[اسم الجدول]ById()Add[اسم الجدول]()Update[اسم الجدول]()Delete[اسم الجدول]()
- استخدام ADO.NET للوصول إلى قاعدة البيانات
- التعامل مع استعلامات معلمة والقيم الفارغة
- إنشاء فئات خدمة تعمل كوسيط
- تحتوي على أماكن مؤقتة لمنطق التحقق
- مثال:
public void AddCustomer(CustomerDTO item) { // أضف منطق التحقق والأعمال هنا _repository.AddCustomer(item); }
- نظام قوائم ديناميكي لجميع الجداول
- واجهة CRUD كاملة:
- عرض جميع السجلات
- عرض تفاصيل السجل
- إضافة سجلات جديدة
- تحديث السجلات الموجودة
- حذف السجلات
- التعامل التلقائي مع أنواع البيانات
- عرض بيانات جدولي
- يدعم حاليًا SQL Server فقط
- يفترض أن المفاتيح الأساسية الرقمية هي أعمدة هوية
- تحتاج عمليات CRUD في تطبيق الكونسول إلى التنفيذ
- معالجة أخطاء محدودة في الكود المُنشأ
- لا يدعم الإجراءات المخزنة
- قد تتطلب العلاقات المعقدة تعديلات يدوية
المساهمات مرحب بها! يرجى عمل "فورك" للمستودع وإنشاء طلب سحب (pull request) بتحسيناتك.
هذا المشروع مرخص تحت رخصة MIT - راجع ملف LICENSE للتفاصيل.
- الحل المُنشأ يستهدف .NET Framework 4.8
- قد تحتاج إلى ضبط التعامل مع القيم الفارغة لأنواع بيانات محددة
- طبقة المنطق التجاري تحتوي على أماكن مؤقتة للتحقق المخصص
- تطبيق الكونسول يوفر نقطة بداية لتطوير الواجهة
لأي أسئلة أو مشكلات، يرجى فتح "إيشو" على GitHub.