Как найти ссылки на интерфейсную функцию, которая используется в нескольких проектах? (Количество проектов> 500)

#c# #visual-studio-2010 #visual-studio-2015

#c# #visual-studio-2010 #visual-studio-2015

Вопрос:

У меня есть интерфейсная функция, которая называется, скажем, «WriteOutput». который реализуется с помощью OutputLibrary.dll .

На эту dll ссылаются в нескольких проектах, скажем, более 500. Как я могу найти ссылки на WriteOutput.

Комментарии:

1. Простой способ… Измените его и увидите ошибки сборки! 🙂

2. использовать grep / find ?

3. Щелкните правой кнопкой мыши… Найти все ссылки . Я предполагаю, что все 500 проектов находятся в одном и том же решении

4. Эмад, Но я должен построить все проекты. Мое приложение огромно.

5. MickyD количество проектов составляет более 600

Ответ №1:

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

 Assembly.ReflectionOnlyLoadFrom(filename).GetReferencedAssemblies()  //HERE FILENAME IS YOUR ASSEMBLY TO INSPECT
 

Найти образец здесь