Как я могу получить настраиваемые атрибуты классов в решении из отдельного консольного приложения? - PullRequest
0 голосов
/ 07 мая 2020

У меня есть настраиваемый атрибут:

[AttributeUsage(AttributeTargets.Class)]
public class SpecialAttribute : Attribute
{
   public SpecialAttribute(string message);
}

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

Например, в решении 1 есть проект со следующим классом:

[Special("Hello world")]
public class SomeClass {}

И в решении 2 есть проект со следующим классом:

[Special("Greetings world")]
public class SomeOtherClass {}

Я хочу создать консольное приложение, которое может сканировать каждое из решений, находить каждый класс с атрибутом и получать строку который был передан ему.

Итак, если бы указанные выше два класса были единственными классами, которые использовали атрибут, я бы хотел закончить списком строк, содержащих «Hello world» и «Greetings world».

Какие у меня есть варианты для этого? Как я могу проверить классы в нескольких проектах в рамках данного решения из полностью отдельного консольного приложения?

Изменить:

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

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