7

क्या वेब.कॉन्फिग फ़ाइल में चर शामिल करना संभव है? प्रत्येक पर्यावरण के लिए, मेरे पास मूल रूप से एक ही परिवर्तन होता है, केवल अलग-अलग मानों के साथ। उदाहरण के लिए, विकास के वातावरण के लिए, मैं होगा ...Web.config ट्रांसफॉर्म चर

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings> 
     <add key="serverName" value="server1" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\server1" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

और क्यूए पर्यावरण के लिए, मैं होगा ...

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings> 
     <add key="serverName" value="server2" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\server2" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

फर्क सिर्फ इतना है server1 के लिए मूल्य है बनाम सर्वर 2। यह एक साधारण उदाहरण है, और हकीकत में, मैं रूपांतरण में कई बार सर्वर मान का उपयोग करता हूं। ट्रांसफॉर्म फ़ाइल में एक चर को कई बार इस्तेमाल करने का कोई तरीका है? कुछ ...

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <property name="server" value="server2" /> 
    <appSettings> 
     <add key="serverName" value="${server}" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
     <add key="serverPath" value="\\${server}" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
    </appSettings> 
</configuration> 

उत्तर

1

मैंने कुछ महीने पहले ऐसा कुछ किया था। उदाहरण http://www.geoffhudik.com/tech/2010/10/19/webconfig-automation-with-t4-and-a-macro.html

+6

यह आपके ब्लॉग का एकमात्र उत्तर है। कृपया यहां प्रासंगिक सामग्री को पुन: प्रकाशित करें ताकि यदि आपका ब्लॉग कभी ऑफ़लाइन हो जाता है, तो आपका उत्तर अन्य दर्शकों के लिए उपयोगी रहता है। – MattD

4

यह web.config परिवर्तनों के साथ समर्थित नहीं है। एक चीज जिसे आप देख सकते हैं T4 Template बना रहा है जिसका उपयोग आपके web.config रूपांतरणों को उत्पन्न करने के लिए किया जा सकता है। तो विचार यह है कि आप टी 4 टेम्पलेट में चर डालते हैं, और यह web.debug.config/web.release.config/etc थूक जाएगा। फिर जब आप पैकेज/प्रकाशित करते हैं तो यह केवल ट्रांसफॉर्म फ़ाइल ले जाएगा जो टी 4 आउटपुट के रूप में उत्पादित किया गया था।

यदि आप उपयोगी होने के कुछ ठोस उदाहरण प्रदान कर सकते हैं तो मुझे ऐसी चीज में आपकी मदद करने में कोई दिक्कत नहीं होगी।