В общем в рамках проекта мне нужно сохранять методы в строки.
Для этого что я делаю:
  • подаю MethodInfo
  • оттуда извлекаю AssemblyQualifiedName у типа-родителя
  • так же извлекаю это же поле у типов-параметров
  • и еще сохраняю название метода
Соответственно как достаю:
  • Юзаю Type.GetType и узнать класс-родитель
  • Юзаю это же самое чтобы узнать типы для параметров
  • Юзаю GetMethod() где указываю типы параметров и достаю конкретный метод.
Но тут есть одна проблема
когда я встречаю методы имеющие дженерики, то я через Type.GetType у меня нифига не выходит достать такой тип - ибо дженерик локален для метода. Соответственно я не могу достать и сам метод с дженериками.
Вот и думаю - как решить эту проблему?
Есть вот какой вариант:
  • извлекать все методы с указанным мной именем.
  • далее сранивать строки в параметрах с сохраненными строками
  • тем самым вычислить нужный мне метод
Что кто думает - правильно ли так делать?

Принятый ответ

собственно сделал таки
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
27
10 лет назад
0
собственно сделал таки
Принятый ответ
0
29
10 лет назад
0
Extravert, так и не понял из того примера, как ты решил проблему

Все понял, просто перебрал доступные методы... хмм, весьма странный подход
0
27
10 лет назад
0
alexprey, легче увы не нашел. Есть еще вариант вручную формировать строку-Assembly для типа, но боюсь так я что-то забуду. Спасает что кеширую, а не реал тайм вызываю.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.