Ошибка привязки к целевому методу - PullRequest
2 голосов
/ 19 октября 2011
MethodInfo method = typeof(T).GetMethod("Parse", new[] { typeof(string) });
parse = Delegate.CreateDelegate(typeof(Func<T,string>), method);

В данном случае T - это число с плавающей точкой.Однако я получаю сообщение об ошибке привязки к целевому методу.Парс я считаю статичным методом.Я посмотрел на другие примеры, но не могу понять, почему это не обязательно.

1 Ответ

3 голосов
/ 19 октября 2011

вам нужно поменять местами T и string, потому что метод возвращает T, а не string.

. Я заменил T на float, и у меня работает следующий код:

MethodInfo method = typeof(float).GetMethod("Parse", BindingFlags.Static | BindingFlags.Public, null, new[] { typeof(string) }, null);

var parse = Delegate.CreateDelegate(typeof(Func<string, float>), method);

источник: VS intellisense и MSDN Func (Of T, TResult) Делегат

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...