12.12 Einen generischen Typ erzeugen

Problem

Sie möchten nur über die Reflection-API einen generischen Typ erzeugen.

Lösung

Einen generischen Typ erzeugen Sie genau so wie einen nicht-generischen Typ. Es gibt allerdings einen zusätzlichen Schritt: Sie müssen die Typargumente, die Sie bei der Erstellung dieses generischen Typs verwenden wollen, erzeugen und beim Erstellen des Typs an die Typparameter des generischen Typs binden. Dazu nutzen wir eine neue Methode, die der Klasse Type hinzugefügt wurde. Sie heißt BindGenericParameters:

public static void CreateMultiMap(Assembly asm) { // Den Typ abrufen, den wir erzeugen wollen. Type typeToConstruct = asm.GetType( "CSharpRecipes.DataStructsAndAlgorithms+MultiMap`2"); // Die Typargumente erzeugen, mit ...

Get C# Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.