Я пару дней бился головой об стену по этому поводу. Никакие поиски в Google или возня, кажется, не дают ответа.
Я хочу запустить шаблон T4 во время сборки. В нем мне нужно получить доступ к типам в сборке, которую я создал до этого проекта. Для сборки мне нужен msbuild, а msbuild плохо работает с переменными VS, поэтому мне нужно использовать другой способ загрузки сборки.
Я' Я читал во многих местах, что T4ReferencePath — это ответ на настройку места для загрузки пользовательской сборки. Однако я не могу заставить его работать.
Когда я указываю это:
Я получаю это, когда пытаюсь загрузить проект в VS или запустить его с помощью msbuild:
d:\Users\250894\Documents\Visual Studio 2013\Projects\TestT4\TestT4.csproj(90,22): error MSB4066: The attribute "Include" in element is unrecognized.
У меня установлен пакет Visual Studio Visualization and Modeling SDK.
Приношу извинения за отсутствие кратко, но я включаю весь файл .csproj моего тестового проекта на случай, если что-то совершенно очевидно, что я пропустил. Я не включаю свой файл .tt, потому что он не имеет значения, если я даже не могу загрузить свой csproj. Если я исключаю T4ReferencePath, все работает правильно.
Debug
AnyCPU
{5B9944E7-47CF-4BFE-BAEF-F02D29D59E80}
Exe
Properties
TestT4
TestT4
v4.5
512
AnyCPU
true
full
false
bin\Debug\
DEBUG;TRACE
prompt
4
AnyCPU
pdbonly
true
bin\Release\
TRACE
prompt
4
true
bin\x64\Debug\
DEBUG;TRACE
full
x64
prompt
MinimumRecommendedRules.ruleset
true
bin\x64\Release\
TRACE
true
pdbonly
x64
prompt
MinimumRecommendedRules.ruleset
true
True
True
Test.tt
TextTemplatingFileGenerator
Test.cs
12.0
$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
true
true
Подробнее здесь: https://stackoverflow.com/questions/241 ... th-to-work