هذا هو تطبيق ASP.NET 8 الأساسي غير المكتمل وتطبيق ويب Angular 17. يعتمد التطبيق على قالب مشروع "Angular و ASP.NET Core" في Visual Studio 2022. كان الهدف هو استخدام تطبيق DeVexpress 'DeVextreme UI Gallery Angular واستخدامه كجانب عميل لتطبيق ASP.NET لإظهار خط عمل رائع (LOB).
لقد لاحظت أن معظم تطبيقات ASP.NET على Github إذا لم يكن الأمر كذلك تفتقر إلى أي واجهة مستخدم أو استخدام واجهة مستخدم مبسطة للغاية. قررت أن يظهر شخص ما واجهة مستخدم جيدة.
تحصل DeVexPress الأصلية على جميع بياناتها من خدمات الويب DeVexPress. لقد قمت بنسخ الإصدار الزاوي وتعديله بحيث يتم تشغيله كجزء من تطبيق ASP.NET كجزء من عميل الويب. يحصل قسم "قائمة جهات الاتصال" الآن على بياناته من نهاية ASP.NET الخلفية التي تحصل عليها من قاعدة البيانات. كان الهدف هو القيام بنفس النوع من التحويل لبقية واجهة المستخدم ، لكنني توقفت قصيرة وانتقلت للتركيز على البلازور. تعتمد النهاية الخلفية على نمط العمارة النظيفة ونفس تدفق نقطة النهاية -> الخدمات -> المستودع -> يمكن تطبيق قاعدة البيانات على بقية التطبيق باستخدام نفس الاتفاقية.
لا ينفذ التطبيق أي مصادقة أو تفويض أو تسجيل أو حاويات. لتنفيذ مثل هذه الميزات ، راجع Jasontaylordev/Cleanarchitecture لبعض الإلهام والتنفيذ.
يعتمد واجهة المستخدم على Devexpress 'Devextreme وهو جناح مكون من واجهة المستخدم الكاملة والمصقول وكان معرض العرض التوضيحي عرضًا رائعًا. أنا أوصي به بشدة. Devextreme مجاني للتطبيقات غير التجارية ويتطلب ترخيصًا للتطبيقات التجارية.
تعليمات لإعداد قاعدة البيانات:
- الخطوة الأولى هي إعداد قاعدة البيانات. يستخدم التطبيق SQL Server. إذا كنت تستخدم SQL Server 2019 أو أعلى ، فيمكنك ببساطة استعادة قاعدة البيانات من ملف النسخ الاحتياطي ، dxfullapp.bak ، في مجلد 'Misc_files' في مشروع البنية التحتية.
- آخر قم بتشغيل البرنامج النصي dxfullapp.sql الموجود في مجلد "Misc_files" لإنشاء قاعدة البيانات وملءها بالبيانات. قم بتحرير الملف إذا لزم الأمر لتحديث قيم FileName إلى المسارات المناسبة لتثبيت SQL Server في نظامك.
- قم بتحديث قيمة DefaultConnectionString إذا لزم الأمر في ملف Appsettings.json في مشروع الخادم.
تعليمات لتشغيل التطبيق:
- (هناك مشكلة حيث يستغرق التحميل عدة دقائق في VS 2022. لست متأكدًا حتى الآن إذا كانت مشكلة محلية.)
- بعد إعداد قاعدة البيانات وسلسلة الاتصال ، اجعل مشروع الخادم مشروع بدء التشغيل. قم بتشغيل التطبيق وسيقوم بتشغيل المتصفح مع الصفحة المحملة بجهات الاتصال. ستعرض الصفحة الأولية صفحة مكسورة ثم تحديث تلقائي وتقديمها بشكل صحيح. يجب إصلاح هذا.
للقيام بقائمة (حاليًا لا توجد خطة لإنهائها):
- قم بتحويل جميع واجهة المستخدم لاستخدام نهاية ASP.NET بدلاً من نقاط نهاية devexpress.
- قم بإنشاء جميع DTOs لخدمة العميل ورسم الخريطة للكيانات لهم. (باستخدام السيارات أو mapster إذا كان ذلك مفضلاً).
- أضف الوحدة والوظيفية والتكامل ونهاية الاختبارات.
- لا تقوم واجهة المستخدم بأي تحديثات مثل حفظ التعديلات أو إنشاء كائنات جديدة. تنفيذ تلك.
- أضف المصادقة ، والترخيص ، والتسجيل ، والشيكات الصحية .. إلخ.
- جرب الحد الأدنى من واجهات برمجة التطبيقات بدلاً من واجهات برمجة التطبيقات القائمة على وحدة التحكم.
- العميل الزاوي أثناء وجوده في الإصدار 17 ، فإنه لا يستخدم حقًا أي من الميزات المحددة للإصدار. كل ما فعلته هو تحويله من الإصدار 15 إلى 17.
لماذا devextreme:
- إنه يحتوي على عشرات مكونات واجهة المستخدم عالية الجودة والمصقول والقابلة للتمديد والتي تدعم أصليًا الزاوي والرد ، Vue و jQuery و JavaScript العادي.
- الدعم الفني الممتاز والتوثيق. عبر الإنترنت مع العروض التوضيحية في الوقت الفعلي التي توضح ميزات كل مكون.
- شبكة بيانات قوية ومستجيب للهاتف المحمول. سعر الجناح بأكمله أقل من سعر مكون واجهة المستخدم الشهير الشهير فقط.
- على الرغم من أنها تكلف الأموال ، فإنها ستوفر لك الكثير من المال من خلال خفض تكاليف التطوير ودعم الوقت مقابل استخدام مكونات واجهة المستخدم المفتوحة المصدر التي تعمل وتتصرف وتنظر بشكل غير متسق. استخدم المكونات التي تكسب الشركة عيشها بدلاً من الاعتماد على مطور أو وقت فراغ المجتمع.
- ملاحظة: أنا لست مرتبطًا بـ devexpress بخلاف كونه عميلًا سعيدًا. أنا فقط أعبر عن آرائي الشخصية.
- استمتع بالترميز!