#c# #visual-studio #code-analysis
#c# #visual-studio #анализ кода
Вопрос:
Давайте предположим, что в моем решении много таких блоков кода:
switch (Key)
{
case "A":
displayName = "Title1";
break;
case "B":
displayName = "Title2";
break;
case "C":
displayName = "Title3";
break;
default:
throw new NotSupportedException();
}
displayName = displayName.X();
Есть ли возможность получить все строки в коде, для которых метод X может быть выполнен?
Комментарии:
1. Вы можете использовать Resharper для определения всех вариантов использования метода
X
в вашем коде.2. Вопрос заключается в «битном» vauge. Вам не нужен Resharper для поиска всех ссылок на метод, в Visual Studio это уже есть. Ответ здесь был бы
displayName
. Однако, если вы хотите найти строковые литералы , вам придется написать свой собственный анализатор, который отслеживал ссылки и присваивания переменным, пока не нашел строковый литерал. Для этого вам, вероятно, придется написать свой собственный анализатор кода с помощью Roslyn. Я сомневаюсь, что какой-либо инструмент будет иметь такой специализированный анализатор.3. Спасибо @PanagiotisKanavos , похоже, это решение моей проблемы!