我想我可能终于在这里找到了解决方案。在浏览 C# 项目的项目文件中如何提及 XAML 文件时,我得到了这个想法。
让我们假设一个文件使用来自的数据,A.tt
并且我们希望在更改时重新生成代码。B.tt
C.xml
C.xml
编辑项目文件。您对A.tt
and的定义B.tt
应如下所示:
<ItemGroup>
<None Include="A.tt">
<Generator>TextTemplatingFileGenerator</Generator>
<LastGenOutput>A.cs</LastGenOutput>
<DependentUpon>C.xml</DependentUpon>
</None>
<None Include="B.tt">
<Generator>TextTemplatingFileGenerator</Generator>
<LastGenOutput>B.cs</LastGenOutput>
<DependentUpon>C.xml</DependentUpon>
</None>
</ItemGroup>
此外,您将需要(当然......)
<ItemGroup>
<None Include="C.xml" />
</ItemGroup>
还有自动生成A.cs
和的指令B.cs
:
<Compile Include="A.cs">
<DependentUpon>A.tt</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
</Compile>
<Compile Include="B.cs">
<DependentUpon>B.tt</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
</Compile>
我相信当您创建模板文件时,大部分内容已经为您完成了,所以您真正需要添加的只是s和s 的<DependentUpon>C.xml</DependentUpon>
部分。ItemGroup
A.tt
B.tt