Я знаю, что могу получить информацию о методе, используя getmethods , но я хочу знать, как это сделать правильно без getMethods . Я прочитал другие вопросы и ответы, которые предполагают, что это невозможно, или вместо этого предлагаю просто использовать LINQ, но на самом деле это не ответ на вопрос.
Код: Выделить всё
private static void Test(T val)
{
}
< /code>
Чтобы получить информацию этого метода, мы можем просто вызовать тип.getmethod ("test", bindingflags.static | bindingflags.nonpublic) < /code>. Однако, если бы была какая -то причина, мы не могли бы использовать эту простую подпись GetMethod
(возможно, из -за нескольких перегрузки), то нам нужно предоставить типы параметров. Проблема в том, что я не могу создать тип параметра, который точно соответствует параметру t al . Интересно, что я могу взять параметры из информации о методе (извлеченной с GetMethods ) и передать это в getMethod , чтобы получить желаемый результат. Это означает, что если бы это было только возможно создать соответствующие общие типы (с iSgenericParameter < /code> установить True), то я чувствую, что это будет вполне возможно. Как создать эти экземпляры типа? И если они не могут создать, почему они не?>
Подробнее здесь:
https://stackoverflow.com/questions/299 ... -parameter