आपके लक्ष्यों को प्राप्त करने के लिए कुछ तरीके हैं, जो आपकी आवश्यकताओं के आधार पर हैं।
सबसे आसान तरीका है मेटाडेटा ( CopyToOutputDirectory
/ CopyToPublishDirectory
) आइटम को सशर्त रूप से सेट करना (मानने के बजाय .txt
एक None
आइटम होना Content
, अगर यह काम नहीं करता है, तो इसके <Content>
बजाय प्रयास करें :
<ItemGroup Condition="'$(Configuration)' == 'Debug'">
<None Update="foo.txt" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>
यदि अधिक नियंत्रण की आवश्यकता होती है, तो सबसे बहुमुखी दृष्टिकोण कस्टम लक्ष्यों को जोड़ना है जो कि csproj फ़ाइल में निर्माण प्रक्रिया में हुक करते हैं:
<Target Name="CopyCustomContent" AfterTargets="AfterBuild">
<Copy SourceFiles="foo.txt" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyCustomContentOnPublish" AfterTargets="Publish">
<Copy SourceFiles="foo.txt" DestinationFolder="$(PublishDir)" />
</Target>
यह एक फाइल को संबंधित डायरेक्टरी में कॉपी करता है। <Copy>
कार्य के लिए अधिक विकल्पों के लिए इसके दस्तावेज देखें । इसे कुछ कॉन्फ़िगरेशन तक सीमित करने के लिए, आप एक Condition
विशेषता का उपयोग कर सकते हैं :
<Target … Condition=" '$(Configuration)' == 'Release' ">
इस Condition
विशेषता को <Target>
तत्व या कार्य तत्वों जैसे दोनों पर लागू किया जा सकता है <Copy>
।