Tatsächlich ist die Kenntnis des Klassennamens in den meisten Szenarien ausreichend. MSDN sagt - Wenn der Typ sich in der gerade ausgeführten Assembly oder in Mscorlib.dll befindet, reicht es aus, den Typnamen anzugeben, der durch seinen Namespace qualifiziert ist.
Type neededType = Type.GetType("TestClass"); //or typeof(TestClass)
Assembly a = neededType.Assembly;
Im Fall müssen Sie nicht die Baugruppe enthält Art kennen (obwohl ich, warum sich vorstellen kann nicht) -
Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
Asssembly result = assemblies.FirstOrDefault(a=>a.GetType("TestClass",false)!=null);
Die einzige Einschränkung - Baugruppe enthält Testclass bereits im Moment des Aufrufs solchen Code geladen werden sollte .
Hoffe, das wird helfen. :)
Das Iterieren über alle referenzierten Assemblies wäre Ihre einzige Option, es würde jedoch leicht zu Duplikaten führen. Aber ich glaube nicht, dass das alles Informationen sind, die du hast, also solltest du versuchen, deine Argumentation für deine Frage deutlicher zu machen. –