से बदलती है मेरे पास लक्षित करने के लिए दो निर्माण वातावरण हैं; रिलीज और स्टेजिंग।web.config फ़ाइल कमांड लाइन
<system.web>
<authentication mode="Windows">
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
मैं मंचन config करने के लिए का निर्माण करके यह बदलना चाहते हैं: Web.config इस तरह दिखता है Web.Staging.config
<system.web>
<authentication mode="Windows">
</authentication>
<authorization xdt:Transform="Replace">
<deny users="?" />
<allow roles="StagingRoles" />
<deny users="*" />
</authorization>
</system.web>
मैं इस तरह कमांड लाइन से निर्माण:
msbuild buildscript.build /p:Configuration=Staging
निर्माण के बाद, मुझे web.config फ़ाइल को निर्माण कलाकृतियों फ़ोल्डर में परिवर्तित नहीं किया गया है। क्या यहां कुछ गड़बड़ है?
धन्यवाद
त्वरित प्रतिक्रिया के लिए धन्यवाद। इसके साथ समस्या यह है कि, मुझे एक और कॉन्फ़िगरेशन फ़ाइल बनाए रखने की आवश्यकता होगी: Web.base.config। जब मैं वीएस के साथ समाधान बनाता हूं, तो यह Web.config को बदल देगा जो आवश्यक नहीं है। जब मैं बिल्ड स्क्रिप्ट चलाता हूं तो मैं रूपांतरण चाहता हूं। –
@sheldon_cooper मैंने अपना जवाब अपडेट किया। –
यह काम करता है लेकिन एक समस्या है। जब रूपांतरण होता है, तो मुझे कुछ हद तक एक त्रुटि मिलती है: Web.config फ़ाइल किसी अन्य प्रक्रिया द्वारा उपयोग की जा रही है।मैंने इसे संकलन लक्ष्य के बाद बुलाया। –