Ник Чапсас показывает набор атрибутов, которые позволяют получать метаданные о C#-коде во время компиляции и использовать их во время выполнения. Смотреть