Поскольку тип Delegate
не указывает сигнатуру функции, необходимо использовать фактический тип делегата для Invoke
со строгим типом.
Рассмотрите возможность использования только одного типа делегата, который имеет тип возврата object
(для которого рекомендуется System.Func<object>
), и обертывание функций как ()=>MethodDS()
при назначении делегату такого типа.
Или, если вы принимаете значительно более низкую производительность, вы можете просто позвонить DynamicInvoke()
с недельным типом вместо Invoke()
для типа Delegate