Actually We are migrating from StructureMap to Lamar,
During the changes we noticed that a new API was introduced BaseLineTypeDiscovery.
At first sight the call to AssemblyFinder.FindAssemblies(...) doesn't seem to change, but we also noticed that it take too much time to return the result. bellow the calling code
static string[] namespaces = new[] { "OurProject" };
public static IEnumerable<Assembly> GetOurProjectAssemblies()
{
return AssemblyFinder.FindAssemblies(
x => namespaces.Contains(x.FullName.Split(".").First())
);
}
When debugging BaseLine source code, I found that the Topological Sort using the Visitor Pattern takes too much time.
Another performance issue, the filter is applied until the end of the process. If the filter were applied at the beginning the number of the assemblies will drop drastically and the process will be fast.
Actually We are migrating from StructureMap to Lamar, During the changes we noticed that a new API was introduced BaseLineTypeDiscovery. At first sight the call to AssemblyFinder.FindAssemblies(...) doesn't seem to change, but we also noticed that it take too much time to return the result. bellow the calling code
When debugging BaseLine source code, I found that the Topological Sort using the Visitor Pattern takes too much time.
Another performance issue, the filter is applied until the end of the process. If the filter were applied at the beginning the number of the assemblies will drop drastically and the process will be fast.
Thank you,