Код: Выделить всё
var delegMethodType = typeof(Func).MakeGenericType(type1, type2, type3, returnType);
После этого я создаю своего делегата следующим образом:
Код: Выделить всё
var deleg = Delegate.CreateDelegate(delegMethodType, obj, methodInfo);
Теперь мне нужно вызвать делегат, но поскольку «Delegate.CreateDelegate» возвращает базовый делегат, я не могу вызвать его с параметрами:
Код: Выделить всё
// due to this delegate was created in runtime VS.NET doesn't recognize
// that the delegate allows three parameters and returns a value
var result = deleg(val1, val2, val3);
Как я могу вызвать этот делегат с тремя параметрами и получить его возвращаемое значение?>
Подробнее здесь: https://stackoverflow.com/questions/698 ... eric-types