Ответ 1
Я так не верю. Провел немного времени, пытаясь решить подобное разочарование с помощью IOC и ReSharper безрезультатно, просто не облегчает его, насколько я могу судить.
Resharper предупреждает меня, когда части моего кода никогда не используются; это очень полезно.
Однако у меня есть довольно много классов, на которые не ссылается другой код напрямую. Эти классы используются только в конфигурации вложения (DI).
Я использую spring.net для DI. Конфигурация DI находится в формате xml.
Можно ли каким-либо образом заставить Resharper использовать файлы DI для проверки неиспользуемых классов?
Я знаю, что могу подавить предупреждение Resharper, используя что-то вроде:
// ReSharper disable UnusedMember.Global
public class TheClass : IInterfaceWiredUsingSpringDI
// ReSharper restore UnusedMember.Global
Но мне это не очень нравится - трудно читать, и я действительно не хочу подавлять предупреждение.
Примечание:
Существует менее навязчивый и более читаемый способ подавить предупреждение, которое я нашел на форуме jetbrains. Когда вы определяете этот настраиваемый атрибут:
[MeansImplicitUse]
public class IoCAttribute : Attribute { }
Затем вы можете подавить предупреждение:
[IoC]
public class TheClass : IInterfaceWiredUsingSpringDI
Я так не верю. Провел немного времени, пытаясь решить подобное разочарование с помощью IOC и ReSharper безрезультатно, просто не облегчает его, насколько я могу судить.
Мне уже 3 года, чтобы ответить на этот вопрос, но я только что увидел этот вопрос через поток twitter ReSharper. Я создал плагин для ReSharper, называемый Агент Малдер, и он делает именно это - анализирует регистрацию контейнеров IoC и позволяет осуществлять навигацию и поиск видов, зарегистрированных через контейнер!
Список поддерживаемых контейнеров можно найти в проекте wiki в github.
(К сожалению, он не работает с Spring.NET, поскольку для этого не было спроса, извините:))