public override string ResolveAssemblyFromClass(
string className
)
{
// search through the well-known assemblies
for (int i = 0; i < _wellKnownAssemblies.Length; i++)
{
if (_wellKnownAssemblies[i] == null)
{
_wellKnownAssemblies[i] = Assembly.Load(
GetCompatibleAssemblyName(_wellKnownAssemblyNames[i])
);
}
if (_wellKnownAssemblies[i] != null && _wellKnownAssemblies[i].GetType(className) != null)
{
return _wellKnownAssemblies[i].GetName().FullName;
}
}
// search through the custom assemblies
if (_assemblies != null)
{
foreach (KeyValuePair<string, Assembly> pair in _assemblies)
{
if (pair.Value.GetType(className) != null)
{
return pair.Value.GetName().FullName;
}
}
}
return null;
}