Beh, se questo è in realtà il nome completo del tipo (ad esempio compresa namespace) ed è in quell'assemblea, allora dovrebbe funzionare. Puoi dare un esempio dove non lo fa? Poiché stai utilizzando Assembly.GetType
anziché Type.GetType
, non devi includere il nome dell'assembly nel nome del tipo.
Si noti che il nome per un tipo generico non è quello che ci si potrebbe aspettare che sia. Per esempio, utilizza:
assembly.GetType("System.Collections.Generic.List`1");
per ottenere il tipo di elenco generico, quindi utilizzare Type.MakeGenericType
per fornire argomenti di tipo.
Naturalmente, ciò è rilevante solo quando il tipo è generico. Se questo non è il problema, controllerò di nuovo che il tipo sia realmente nell'assembly di ingresso.
EDIT: Oh, ed essere consapevoli che i tipi annidati saranno "Container + nidificati" piuttosto che "Container.Nested" se questo è rilevante ...
fonte
2009-09-08 08:46:34
Mostraci cosa intendi per nome completo? – AnthonyWJones
l'assembly è il mio eseguibile (.net eseguibile) e il nome del tipo è: System.Xml.XmlNode –
System.Xml.XmlNode non esiste nell'assembly, pertanto è necessario utilizzare Type.GetType inestead di Assembly.GetType. –