আমি এর অনুরূপ কোড ব্যবহার করে নির্দিষ্ট ইন্টারফেস প্রয়োগ করার ধরণের জন্য অ্যাসেম্বলি স্ক্যান করার চেষ্টা করছি:
public List<Type> FindTypesImplementing<T>(string assemblyPath)
{
var matchingTypes = new List<Type>();
var asm = Assembly.LoadFrom(assemblyPath);
foreach (var t in asm.GetTypes())
{
if (typeof(T).IsAssignableFrom(t))
matchingTypes.Add(t);
}
return matchingTypes;
}
আমার সমস্যাটি হ'ল, আমি কিছু ক্ষেত্রে ReflectionTypeLoadException
ফোন করার সময় পাই asm.GetTypes()
eg উদাহরণস্বরূপ, যদি অ্যাসেমব্লিতে এমন কোনও সমাবেশ থাকে যা বর্তমানে পাওয়া যায় না re
আমার ক্ষেত্রে, আমি সমস্যাগুলির কারণগুলিতে আগ্রহী নই। আমি যে ধরণের জন্য অনুসন্ধান করছি তা অ-উপলভ্য সমাবেশগুলির প্রয়োজন হয় না।
প্রশ্নটি হ'ল কীভাবে কোনও উপায় বাদ দেওয়া বা উপেক্ষা করা সম্ভব যেগুলি ব্যতিক্রম ঘটায় তবুও সমাবেশে থাকা অন্যান্য ধরণের প্রক্রিয়াগুলি এখনও প্রক্রিয়া করে?