Wie rufe ich eine generische Methode auf, indem ich eine zur Laufzeit erhaltene Type-Variable verwende?
Hallo zusammen! Ich schreibe eine Anwendung in C# und bin auf ein Problem gestoßen, das ich seit Stunden nicht lösen kann. Ich habe eine generische Methode, die jeden Datentyp akzeptiert und eine Logik damit ausführt, z.B. Serialisierung. Sie sieht so aus:
```csharp
public T Deserialize(string jsonData)
{
return JsonSerializer.Deserialize(jsonData);
}
```
Das Problem ist, dass ich den Typ, mit dem ich diese Methode aufrufen möchte, **nur zur Laufzeit** erhalte – er liegt in einer Variable `Type myType`. Zum Beispiel lade ich eine Assembly, finde darin Klassen und möchte JSON für jede von ihnen deserialisieren, aber ich kenne den Typ nur als `Type`-Objekt.
Ich habe es so versucht:
```csharp
Type myType = typeof(MyClass); // Das erhalte ich dynamisch
var result = Deserialize(jsonString); // Fehler
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen