private static Type[] FindSystemTypesInCurrentAssembly()
{
var directory = AppContext.BaseDirectory;
var assemblyName = Path.GetFileName(directory);
try
{
#if NET46
var assembly = Assembly.Load(assemblyName);
#else
var assembly = Assembly.Load(new AssemblyName(assemblyName));
#endif
return FindSystemTypes(assembly).ToArray();
}
catch (Exception e)
{
ConsoleWriter.Write("Error trying to find types in an assembly named '{0}'", assemblyName);
ConsoleWriter.Write(ConsoleColor.Yellow, e.ToString());
return new Type[0];
}
}