У меня есть папка сгенерированных файлов, которая отражает файлы моего проекта.
Пример: если у проекта есть файл в Framework/HaTool.cs
, тогда также будет файл в Generated/Framework/HaTool.cs
.
Я пытаюсь использовать файлы Generated
для сборки и исходные файлы для отладки и разработки. (Я использую директиву #line
)
Я получил почти все для работы, за исключением того, что я не могу найти способ заставить Visual Studio (сообщество 2017) отображать каталог Generated
и его файлы в обозревателе решений и Не попробуйте собрать их вместе во время разработки.
Моя текущая настройка не покажет мне файлы в обозревателе решений, но будет использовать их для сборки. Вот соответствующие части моего .csproj
файла:
<Project ToolsVersion="15.0">
<PropertyGroup Condition="'$(GeneratedSourcePath)'==''">
<GeneratedSourcePath>Generated</GeneratedSourcePath>
</PropertyGroup>
<ItemGroup>
<Compile Remove="$(GeneratedSourcePath)\**" />
</ItemGroup>
<Target Name="UseGeneratedTarget" BeforeTargets="BeforeBuild" KeepDuplicateOutputs="false">
<ItemGroup>
<Compile
Condition="Exists('$(GeneratedSourcePath)\%(Compile.Identity)')"
Include="$(GeneratedSourcePath)\%(Compile.Identity)" />
<Compile
Condition="Exists('$(GeneratedSourcePath)\%(Compile.Identity)')"
Remove="%(Compile.Identity)" />
</ItemGroup>
</Target>
<Target Name="CleanupTarget" AfterTargets="AfterBuild">
<ItemGroup>
<Compile>
<NonGeneratedFilename>$([System.String]::Copy('%(Compile.Identity)').Replace('$(GeneratedSourcePath)\', ''))</NonGeneratedFilename>
</Compile>
</ItemGroup>
<ItemGroup>
<Compile Include="@(Compile->'%(NonGeneratedFilename)')"/>
</ItemGroup>
</Target>
</Project>
Есть ли способ просто позволить VS показывать файлы, не собирая их? что мне не хватает?