Im Allgemeinen sollten Sie dies nicht tun. Wenn ein Typ als intern markiert wurde, bedeutet dies, dass Sie ihn nicht von außerhalb der Assembly verwenden dürfen. Es könnte in einer späteren Version entfernt, geändert usw. werden.
Allerdings Reflexion macht Sie auf Zugriffstypen und Mitgliedern ermöglichen , die nicht öffentlich sind - nur Blick für Überlastungen , die einen nehmen BindingFlags
Argument, und umfassen BindingFlags.NonPublic
in den Flags , dass Sie weitergeben.
Wenn Sie den vollständig qualifizierten Namen des Typs (einschließlich der Assembly-Informationen) haben, Type.GetType(string)
sollte nur der Aufruf funktionieren. Wenn Sie die Assembly im Voraus kennen und einen öffentlichen Typ innerhalb dieser Assembly kennen, ist die Verwendung typeof(TheOtherType).Assembly
zum Abrufen der Assemblyreferenz im Allgemeinen einfacher. Sie können dann aufrufen Assembly.GetType(string)
.