我的方法存在性能问题,该方法可以找到从某种类型派生的类型。它使用反射来获取当前加载的所有程序集(AppDomain.CurrentDomain.GetAssemblies()
),然后迭代每个程序集中的所有类型(Assembly.GetTypes()
)以查找匹配项。它在一个单独的DLL中实现,可以在.NET应用程序中使用,但它也是COM可见的,可以从VB6应用程序调用。
这种方法非常有效,并且在许多情况下也表现良好。我的问题是,在某些情况下,程序集System.Data.Entity上的GetTypes调用需要很长时间,超过5秒。以下是主要观察结果:
我已经用最少的测试应用程序成功验证了上述观察结果,因此实际上没有什么比我刚才提到的更多。
对于可能导致此问题的原因我一无所知。有人有想法吗?
此致 彼得。