"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكن أن تجد LINQ بكفاءة جميع الأنواع المشتقة من نوع الأساس المحدد؟

كيف يمكن أن تجد LINQ بكفاءة جميع الأنواع المشتقة من نوع الأساس المحدد؟

نشر في 2025-03-23
تصفح:769

How Can LINQ Efficiently Find All Derived Types of a Specified Base Type?

العثور على أنواع مشتقة من نوع محدد تقليديًا ، تم تحقيق ذلك من خلال تقنيات شاقة مثل التكرار على جميع الأنواع في التجميعات المحملة والتحقق يدويًا للمخصصين لنوع الهدف. يوفر مقتطف الكود التالي طريقة واضحة ومؤداء لإنجاز هذه المهمة:

من المجال في appdomain.currentdomain.getassemblies () من النوع في domainassembly.getTypes () حيث النوع (baseTypename) .isasassignablefrom (النوع) حدد النوع) .toarray () ؛

بناء جملة بديل بديل:
var listOfDerivedTypes = (
                from domainAssembly in AppDomain.CurrentDomain.GetAssemblies()
                from type in domainAssembly.GetTypes()
                where typeof(BaseTypeName).IsAssignableFrom(type)
                select type).ToArray();
.selectmany (domainassembly => domainassembly.getTypes ()) . where (type => typeof (baseTypename) .ISASASIGNABLEFROM (type)) .toarray () ؛

التخصيصات:

domainassembly.getTypes (). type.isabstract to the where penk. للحصول على إرشادات ، راجع الموارد المرتبطة في قسم "التفاصيل".

            
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3