методы поиска быстрее - PullRequest
       1

методы поиска быстрее

0 голосов
/ 28 сентября 2010

Я пытаюсь найти 33 .dll, чтобы найти ссылки на метод. Требуется более 10 минут, чтобы просмотреть все библиотеки и найти ссылки. Есть ли способ ускорить процесс.

каждый из этих приблизительно имеет 450 классов, и каждый из этого класса имеет приблизительно 200 методов каждый

Шаг, за которым я следую:

assemblyName = System.IO.Path.GetFullPath(file)
assembly = System.Reflection.Assembly.LoadFile(assemblyName)

Dim types = assembly.GetTypes()
For Each Type In types
  methods = Type.GetMethods()
  For Each method In methods
    'save method info, class type
  Next
Next

Ответы [ 2 ]

1 голос
/ 02 августа 2011

Я знаю много необычных инструментов, в том числе PostSharp и NDepend (что является отличным инструментом), использующих Сесил .Это должно быть лучше, чем .NET отражения для некоторых вещей.

Попробуйте ...

1 голос
/ 28 сентября 2010

Вы можете просмотреть свои 33 библиотеки и сохранить результат того, что вы ищете, в базе данных. И затем вместо того, чтобы спрашивать свои библиотеки, спрашивать свою базу данных, это будет быстрее и даст вам прямо правильную дверь, чтобы постучаться ... (Я имею в виду, что вы можете затем указать прямо на хорошую библиотеку и хороший класс, чтобы получить больше информации или создать какой-то объект, ...)

Мой комментарий не очень понятен, поэтому я обновляю свой ответ.

Перед запуском новой версии вы заполняете базу данных новыми значениями вашего проекта с ключом, ссылающимся на вашу версию, конечно. При этом при запуске нового приложения вам не нужно будет ждать 10 минут, чтобы получить ваши данные, потому что вы уже использовали 10 минут, прежде чем скрытые, чтобы заполнить базу данных. Если ваше приложение перезапустится без изменений в ваших библиотеках, информация также останется здесь, потому что версия будет той же.

Желаю тебе удачи в любом случае ...

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