Moin,
ich habe zur Zeit das Problem, dass ich verschiedene Typen eines generischen Delegaten in einem Dictionary speichern möchte, um später durch Suchen nach einem Key den dazugehörigen Callback zu finden. Folgendes habe ich mir dazu vorgestellt.
Nun ist natürlich klar, dass das so nicht funktionieren kann. Die Frage ist nun, ob und, wenn ja, wie man so etwas realisieren kann. Vermutlich ist meine Herangehensweise falsch.
ich habe zur Zeit das Problem, dass ich verschiedene Typen eines generischen Delegaten in einem Dictionary speichern möchte, um später durch Suchen nach einem Key den dazugehörigen Callback zu finden. Folgendes habe ich mir dazu vorgestellt.
C#-Quellcode
- public class CommandManager
- {
- public delegate void CommandCallback<T>(T command) where T : ICommand;
- private Dictionary<Type, CommandCallback> callbacks;
- public CommandManager()
- {
- callbacks = new Dictionary<Type, CommandCallback>();
- }
- public void RegisterCommandHandler<T>(CommandCallback<T> callback) where T : ICommand
- {
- callbacks.Add(typeof(T), callback);
- }
- }
Nun ist natürlich klar, dass das so nicht funktionieren kann. Die Frage ist nun, ob und, wenn ja, wie man so etwas realisieren kann. Vermutlich ist meine Herangehensweise falsch.
Mit freundlichen Grüßen,
Thunderbolt
Thunderbolt