После ответа Генри Соча о VS2015 (и, вероятно, VS2013 и VS2012 или что-либо, использующее проекты в стиле MSBuild), важен тип элемента ItemGroup.
В частности <Text>
элементы делаюткажется, что не копируются, тогда как <Content>
элементы делают.
Итак, для каталога проекта Данные , содержащего текстовый файл ThisIsData.txt , это создастПодкаталог Данные в каталоге $(OutDir)
и скопировать в него файл ThisIsData.txt из проекта, если он более новый:
<ItemGroup>
<Content Include="Data\ThisIsData.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
Это не будет,хотя это то, что Visual Studio IDE будет вставлять, если вы добавите текстовый файл в свой проект и установите для свойства Content
значение True
.
<ItemGroup>
<Text Include="Data\ThisIsData.txt">
<DeploymentContent>true</DeploymentContent>
</Text>
</ItemGroup>
Другими словами, вам нужно добавитьфайл через IDE, чтобы он понял, что файл включен в проект (который добавляет <Text>
тег ItemGroup), а затем откройте проект в текстовом редакторе и добавьте тег <Content>
ItemGroup, чтобы заставить его делать то, что вы хотите.
Я не уверен, чтотег <DeploymentContent>
на самом деле делает.Это может быть остаток, так как единственная ссылка на MSDN, которую я смог найти, считает ее заархивированной: https://msdn.microsoft.com/en-us/library/aa712517.aspx