#c# #reflection #attributes #assemblies #reference
#c# #отражение #атрибуты #сборки #ссылка
Вопрос:
Я использую .NET 3.5 и VS2010 и пытаюсь искать методы тестирования и тестовые классы в сборке. Я хотел бы использовать тип.Метод GetCustomAttributes (Type, Boolean), потому что это позволяет мне выполнять поиск непосредственно по этим атрибутам, в отличие от получения всех атрибутов и повторения выполнения сравнения строк.
Для выполнения этого мне нужно было бы сослаться на Microsoft.VisualStudio.QualityTools.UnitTestFramework, который, похоже, невозможен вне тестового проекта. Я уже пробовал редактировать xml, и это не сработало.
Вот пример кода, который я хотел бы использовать
var atts = method.GetCustomAttributes(typeof(TestMethod),false)
if (atts.Length > 0)
do something
Возможно ли это?
Комментарии:
1. Как вы думаете, почему невозможно ссылаться на эту сборку в «обычном» проекте?
2. Его нет в списке сборок, когда я пытаюсь добавить его из visual Studio
Ответ №1:
Вы можете добавить Microsoft.VisualStudio.QualityTools.UnitTestFramework
сборку в обычный проект. Причина, по которой он не отображается в вашем диалоговом окне «Добавить ссылку», заключается в том, что ваш проект нацелен либо на «Клиентский профиль .NET Framework 3.5», либо на «Клиентский профиль .NET Framework 4». Измените «Целевая платформа» либо на «.NET Framework 3.5», либо на «.NET Framework 4» на вкладке «Приложение» свойств вашего проекта.