T4 действительно обнаружил зависимости проекта до VS2010.Мы сознательно решили отделить ссылки времени разработки от ссылок времени выполнения, чтобы отделить эти проблемы и лучше поддерживать использование .Net 4.0 в шаблонах, даже если они использовались для генерации кода для проекта .Net 2.0.
Вы могли бы сделать что-то похожее на pre-VS2010, создав собственный процессор директив, который использовал Host в качестве ServiceProvider для получения DTE, а затем прошелся по решению / проектам, чтобы найти их ссылки.Хотя было бы немного работы.
Мне интересно узнать, что связывает зависимости вашего проекта с зависимостями, которые нужны вашему шаблону.Например, проект, который использует WinForms, обычно не нуждается в WinForms в своем коде шаблона.Основы, такие как System.Core, обычно присутствуют в обоих, но этот общий набор не часто кажется большим, поэтому дублирование не является серьезной проблемой.
У вас есть большой общий набор?