यहां इस समस्या को हल करने के लिए अंत समाप्त करने के लिए पर थोड़ा और अधिक विस्तार है:
आप दो चीजों स्थिति सही ढंग पर स्थापित कर रहे हैं स्थापित सुनिश्चित करने के लिए क्या करने की जरूरत ...
- फ़ाइलों की स्थिति को चिह्नित करने के लिए install.ps1 स्क्रिप्ट लिखें।
- सुनिश्चित करें कि install.ps1 स्क्रिप्ट nuget पैकेज में उपकरण निर्देशिका में है।
Install.ps1 स्क्रिप्ट
निम्न उदाहरण स्क्रिप्ट रिकर्सिवली "सामग्री" में हर फ़ाइल और "देखें" "नए को कॉपी" के रूप में निर्देशिका का प्रतीक होगा। ध्यान दें कि इस उदाहरण स्क्रिप्ट को पढ़ने और समझने के लिए स्पष्ट करने के लिए लिखा गया है। यह विजुअल स्टूडियो प्रोजेक्ट की मूल निर्देशिका में सामग्री और दृश्य फ़ोल्डरों में प्रत्येक फ़ाइल को चिह्नित करेगा। उपकरण
आप स्क्रिप्ट के लिए उपकरण निर्देशिका के लिए install.ps1 फ़ाइल की प्रतिलिपि चाहिए करने के लिए
param($installPath, $toolsPath, $package, $project)
function MarkDirectoryAsCopyToOutputRecursive($item)
{
$item.ProjectItems | ForEach-Object { MarkFileASCopyToOutputDirectory($_) }
}
function MarkFileASCopyToOutputDirectory($item)
{
Try
{
Write-Host Try set $item.Name
$item.Properties.Item("CopyToOutputDirectory").Value = 2
}
Catch
{
Write-Host RecurseOn $item.Name
MarkDirectoryAsCopyToOutputRecursive($item)
}
}
#Now mark everything in the a directory as "Copy to newer"
MarkDirectoryAsCopyToOutputRecursive($project.ProjectItems.Item("Content"))
MarkDirectoryAsCopyToOutputRecursive($project.ProjectItems.Item("Views"))
कॉपी nuget द्वारा निष्पादित की जाने। ऐसा करने के लिए आप निम्न को nuspec टेम्पलेट में जोड़ सकते हैं।
इस मामले में <files>
<file src="install.ps1" target="Tools"/>
</files>
नोट मैं अपने दृश्य स्टूडियो परियोजना के रूट में install.ps1 फ़ाइल है और के रूप में "कॉपी नए यदि" चिह्नित।
स्रोत
2013-07-24 17:30:18
// शक्तिशक्ति में कोई टिप्पणी नहीं है, इसका उपयोग करें :) अन्यथा बहुत उपयोगी, धन्यवाद – grahamrhay
@ ब्रेंट: आइटम ("CopyToOutputDirectory") के लिए स्वीकृत मानों पर कुछ दस्तावेज़ों की तलाश में मुझे पता है कि यह एक डीटीई enum है लेकिन ऐसा प्रतीत नहीं होता इसे ढूंढें: -/आपके संदर्भ का एक लिंक मेरे लिए और इस उत्तर को प्राप्त करने वाले किसी भी व्यक्ति के लिए बहुत मददगार होगा। – workabyte